COMCSS page# 0001 next
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
COMCSS page# 0002 next prev
120: BEGIN APRSER ↔ SUBTTL SAVGET 4 AUG 67
121:
122:
123:
124:
125:
126: FILNAM←←0
127: FILEXT←←FILNAM+1
128: FILDAT←←FILNAM+2
129: FILLEN←←FILNAM+3
130:
131:
132: DMPEND←←FILLEN+1
133:
134:
135: MODWRD←←5
136: DEVWRD←←MODWRD+1
137: HEDWRD←←MODWRD+2
138:
139:
140: DMPWRD←←11
141: NEWCOR←←12
142:
143: ↑INCWRD←←13
144:
145: COMWRD←←17
146: CHRWRD←←16
COMCSS page# 0003 next prev
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160: C←←BUFPNT
161:
162: SGDVOK: PUSH P,TAC
163: PUSH P,IOS
164: PUSH P,DAT
165: PUSH P,DDB
166: MOVE TAC,TAC1
167: PUSHJ P,DEVSRC
168: JRST SGSETB
169: MOVE TAC,DEVMOD(DDB)
170: TLNE TAC,DVDSK!DVDTA!DVMTA
171: AOS -4(P)
172: SGSETB: POP P,DDB
173: POP P,DAT
174: POP P,IOS
175: JRST TPOPJ
176:
177: SGSET: MOVEI AC2,0
178: SGSET0:
179: IFN FTLOGIN,< MOVEM AC2,JOBPPN(J)>
180: MOVEM TAC1,DEVWRD(PROG)
181: JUMPE TAC1,SGSETC
182: PUSHJ P,SGDVOK
183: JRST SGSETC
184: SKIPN TAC1,JOBNAM(J)
185: JRST SGSET3
186: SGSETA: MOVEM TAC1,FILNAM(PROG)
187: MOVSI TAC1,'DMP'
188: MOVEM TAC1,FILEXT(PROG)
189: IFN FTLOGIN,< SETZM FILLEN(PROG)
190: XCT SGPPN >
191: JRST SGSET1
192:
193: SGSETC: MOVSI TAC1,'DSK'
194: EXCH TAC1,DEVWRD(PROG)
195: JUMPN TAC1,SGSETD
196: SKIPN TAC1,JOBNAM(J)
197: JRST NOTENF
198: JRST SGSETA
199:
200: SGSET3: PUSHJ P, CTEXT1
201: JUMPE TAC1,NOTENF
202: SGSETD: MOVEM TAC1,FILNAM(PROG)
203: MOVEM TAC1,JOBNAM(J)
204: IFN FTSTAT,< PUSHJ P,NAMSTT>
205: MOVSI TAC1,'DMP'
206: CAIN TEM,"."
207: PUSHJ P,CTEXT1
208: HLLZM TAC1,FILEXT(PROG)
209:
210: IFN FTLOGIN,<
211: SETZM FILLEN(PROG)
212: PUSHJ P,PJPGNO
213: SGPPN:
214: IFE FTDSKPPN,< MOVE AC2,PRJPRG(J)>
215: IFN FTDSKPPN,< JSP AC1,[SKIPN AC2,DSKPPN(J)
216: MOVE AC2,PRJPRG(J)
217: JRST (AC1)] >
218: >
219:
220: PUSHJ P,DECIN1
221: JRST SGSET1
222: JRST COMERA
223: LSH TAC1,12
224: SUBI TAC1,1
225: SGSET1: HRRZM TAC1,JOBCOR(PROG)
226: IFN FTLOGIN,< SKIPN JOBPPN(J)
227: MOVEM AC2,JOBPPN(J)>
228: MOVE TAC1,IOS
229: JRST MSTART
COMCSS page# 0004 next prev
231:
232:
233:
234:
235:
236:
237:
238:
239: ↑SSAVJB:
240: JSP TAC1,SG1
241: JFCL
242: PUSHJ P,SSAVJA
243: JRST SAVJB1
244:
245: ↑SAVJOB:
246: JSP TAC1,SG1
247: JFCL
248: PUSHJ PDP,SAVJB
249: SAVJB1: PUSHJ P,INLMES
250: ASCIZ/JOB SAVED IN /
251: HLRO TAC,FILLEN(PROG)
252: MOVNS TAC
253: ADDI TAC,JOBSAV
254: LSH TAC,-12
255: ADDI TAC,1
256: PUSHJ P,RADX10
257: SKIPE NEWCOR(JDAT)
258: JRST SAVEUP
259: LDB TAC,PSEGN
260: JUMPE TAC,SAVNUP
261: JSP TAC,PHOLD
262: ASCIZ/K
263: UPPER NOT SAVED!
264: /
265:
266: SAVEUP: PUSHJ P,INLMES
267: ASCIZ/K
268: UPPER SAVED IN /
269: HLRO TAC,NEWCOR(JDAT)
270: MOVNS TAC
271: ADDI TAC,1777
272: LSH TAC,-12
273: PUSHJ P,RADX10
274: SAVNUP: JSP TAC,PHOLD
275: ASCIZ/K
276: /
COMCSS page# 0005 next prev
278:
279:
280:
281:
282:
283:
284:
285:
286:
287: ↑GETJOB:
288: JSP TAC1,SG1
289: JRST NOFILE
290: PUSHJ PDP,GETJB
291: GETJ1: PUSHJ P,INLMES
292: ASCIZ /JOB SETUP IN /
293: HLRZ TAC,JBTADR(J)
294: LSH TAC,-12
295: ADDI TAC,1
296: PUSHJ P,RADX10
297: LDB AC3,PSEGN
298: JUMPE AC3,GETNUP
299: PUSH P,AC3
300: PUSHJ P,INLMES
301: ASCIZ/K
302: YOUR UPPER IS /
303: POP P,AC3
304: HLRZ TAC,JBTADR(AC3)
305: ADDI TAC,1777
306: LSH TAC,-12
307: PUSHJ P,RADX10
308: GETNUP: JSP TAC,PHOLD
309: ASCIZ/K
310: /
311: NOFILE: PUSHJ P,CLRTPV
312: PUSHJ PDP,SGREL
313: PUSHJ PDP,PRQM
314: PUSHJ PDP,CRLF
315: MOVE TAC1,FILNAM(PROG)
316: PUSHJ PDP,PRNAME
317: PUSHJ PDP,PRPER
318: HLLZ TAC1,FILEXT(PROG)
319: PUSHJ PDP,PRNAME
320: JSP TAC,PHOLD
321: ASCIZ / NOT FOUND/
COMCSS page# 0006 next prev
323:
324:
325:
326:
327:
328: ↑RUNJOB:
329: JSP TAC1,SG1
330: JRST NOFILE
331: PUSHJ P,GETJB
332: HRRZ TAC,JOBSA(JDAT)
333: TRNN TAC,-1
334: JRST NOSTRT
335: ADD TAC,SAVSAI(J)
336: HRLI TAC,USRMOD
337: MOVEM TAC,UUOPC(J)
338: MOVE TAC,JOBPPN(J)
339: MOVEM TAC,DMPEND(PROG)
340: JRST USRXIT
341:
342: NOSTRT: PUSHJ P,INLMES
343: ASCIZ /NO STARTING ADDRESS.
344: /
345: JRST GETJ1
COMCSS page# 0007 next prev
347:
348:
349:
350:
351:
352:
353:
354:
355:
356: SG1: JSP TAC,MONSTR
357:
358: PUSHJ PDP,RESETUUO
359: MOVEI TAC,2
360: MOVEM TAC,MODWRD(PROG)
361: SETZM HEDWRD(PROG)
362: SKIPN TAC,JOBCOR(PROG)
363: JRST SGCOR
364: CAMG TAC,USRREL(PID)
365: JRST SGCOR1
366: PUSHJ P,RUNCOR
367: JRST SG2
368: SGCOR1: MOVN TAC,JOBCOR(PROG)
369: JRST SGCOR2
370:
371: SGCOR: HRRZ TAC,JOBFF(JDAT)
372: CAMLE TAC,USRREL(PID)
373: JRST SG2
374: JUMPE TAC,SG2
375: MOVNS TAC
376: SKIPE USRDDT(PID)
377: SG2: MOVN TAC,USRREL(PID)
378: SGCOR2: ADDI TAC,JOBSAV
379: HRLI TAC,JOBSAV
380: MOVSM TAC,DMPWRD(PROG)
COMCSS page# 0008 next prev
382:
383:
384: OPEN 0,MODWRD
385: JRST SGERRA
386: MOVE TAC1,DEVNAM(DEVDAT)
387: MOVEM TAC1,JOBDEV(ITEM)
388: MOVE TAC1,DEVLOG(DEVDAT)
389: MOVEM TAC1,JOBLOG(ITEM)
390: MOVE TAC1,DEVMOD(DEVDAT)
391: HLRZ TAC,FILEXT(PROG)
392: CAIN TAC,'DMP'
393: TLNN TAC1,DVDTA
394: JRST .+2
395: MOVEI TAC,SAVDMP
396: HRLM TAC,FILEXT(PROG)
397: MOVE AC1,JOBPPN(ITEM)
398: MOVEM AC1,FILLEN(PROG)
399: TLNN TAC1,DVDSK
400: MOVEM TAC,FILLEN(PROG)
401: LOOKUP 0,FILNAM
402: SOS (PDP)
403: MOVE TAC,DMPWRD(PROG)
404: MOVE TAC1,DEVMOD(DEVDAT)
405: MOVE ITEM,JOB(PID)
406: TLNE TAC1,DVDSK
407: JRST SG3
408: SETZM JOBPPN(ITEM)
409: JRST CPOPJ1
410: SG3: MOVE AC1,FILPPN(DEVDAT)
411: EXCH AC1,JOBPPN(ITEM)
412: JRST CPOPJ1
COMCSS page# 0009 next prev
414:
415:
416:
417: SGERRA: JUMPE DEVDAT,SGERR1
418: MOVEM DEVDAT,(PDP)
419: PUSHJ PDP,TTYFNU
420: PUSHJ PDP,PRQM
421: PUSHJ PDP,CRLF
422: PUSHJ PDP,ERNAM
423: JSP TAC,PHOLD
424: ASCIZ / NOT AVAILABLE/
425:
426: SGERR1: PUSHJ PDP,TTYFNU
427: JSP TAC,PHOLD
428: ASCIZ /?
429: NO SUCH DEVICE/
COMCSS page# 0010 next prev
431:
432:
433:
434:
435:
436:
437:
438:
439:
440:
441: SGDO: SETZM DMPEND(PROG)
442: HLRO TAC,FILLEN(PROG)
443: SUBI TAC,JOBSAV
444: ADD TAC,USRREL(PID)
445: JUMPL TAC,NOROOM
446: MOVEM DEVDAT,USRHCU(PID)
447:
448: XCT @(PDP)
449:
450: PUSHJ PDP,CLRUSR
451:
452: MOVEM DEVDAT,USRJDA(PID)
453: PUSH P,IOS
454: PUSHJ PDP,SGREL
455: MOVE TAC,JOBS41(JDAT)
456: MOVEM TAC,JOB41(JDAT)
457: POP P,TAC
458: TRNN TAC,IOBKTL+IODERR+IODTER+IOIMPM
459: JRST CPOPJ1
460: SGTERR: JSP TAC,PHOLD
461: ASCIZ \?
462: SAVE/GET IO ERROR\
463:
464: NOROOM: PUSHJ PDP,SGREL
465: PUSHJ PDP,PRQM
466: PUSHJ PDP,CRLF
467: SKIPLE TAC,JOBCOR(JDAT)
468: JRST NOROM1
469: HLRO TAC1,FILLEN(PROG)
470: MOVNS TAC1
471: HRRZ TAC,FILLEN(PROG)
472: ADD TAC,TAC1
473: NOROM1: LSH TAC,-12
474: ADDI TAC, 1
475: PUSHJ PDP,RADX10
476: JSP TAC,PHOLD
477: ASCIZ /K OF CORE NEEDED/
COMCSS page# 0011 next prev
479:
480:
481:
482:
483: SGREL: SKIPN USRJDA(PID)
484: JRST TTYFUW
485: MOVE TAC,DEVMOD(DEVDAT)
486: TLNE TAC,DVMTA
487: TLNN DEVDAT,INPB
488: JRST SGREL1
489: CLOSE 0,CLSOUT
490: STATO 0,IOTEND
491: MTAPE 0,6
492: SGREL1: RELEASE 0,
493: JRST TTYFUW
COMCSS page# 0012 next prev
495:
496:
497:
498: GETJB: PUSHJ P,RESETSEG
499: SETZM JOBINT(JDAT)
500: MOVE TAC,FILDAT(PROG)
501: MOVEM TAC,JOBCRD(J)
502: MOVE TAC,DMPWRD(PROG)
503: TLNE TAC1,DVDSK
504: HRRM TAC,FILLEN(PROG)
505: HRRZ TAC,JOBCOR(PROG)
506: MOVEM TAC,NEWCOR(PROG)
507: SETZM JOBCOR(PROG)
508: JUMPG TAC,GETJB1
509: TLNE TAC1,DVMTA
510: JRST GETJB3
511: HLRO TAC1,FILLEN(PROG)
512: JUMPGE TAC1,GETERR
513: HRRZ TAC,FILLEN(PROG)
514: SUB TAC,TAC1
515:
516: IORI TAC,1777
517: GETJB1: MOVE ITEM,JOB(PID)
518: PUSHJ PDP,RUNCOR
519: JRST NOROOM
520: MOVE TAC1,DEVMOD(DEVDAT)
521: TLNN TAC1,DVMTA
522: JRST GETJB2
523: GETJB3: HLRZ TAC1,PROG
524: SUBI TAC1,JOBSAV
525: MOVNS TAC1
526: HRLI TAC1,JOBSAV
527: MOVSM TAC1,FILLEN(PROG)
528: GETJB2: PUSHJ PDP,SGDO
529: INPUT 0,FILLEN
530: MOVE TAC,JOBPPN(J)
531: MOVEM TAC,FILLEN(PROG)
532: HLRZ TAC,HILOC(JDAT)
533:
534: ANDI TAC,377
535: DPB TAC,[POINT 9,JOBCRD(J),8]
COMCSS page# 0013 next prev
537:
538:
539:
540:
541:
542: SKIPN TAC,HILOC(JDAT)
543: JRST GETDN1
544: TLZ TAC,777777
545: IORI TAC,1777
546: CAML TAC,USRREL(PID)
547: JRST GETERA
548: PUSH P,DDB
549: SKIPN TAC,HINAME(JDAT)
550: JRST GETJ5
551: MOVEM TAC,FILLEN(PROG)
552: ATTSEG FILLEN,
553: JRST GETJ5
554: LDB TAC,PSEGN
555: MOVE TAC,JBTSTS(TAC)
556: SKIPL HILOC(JDAT)
557: JRST GETJ7
558: TLNE TAC,JWP
559: JRST GETDON
560: JRST GETJ8
561: GETJ7: TLNN TAC,JWP
562: JRST GETDON
563: GETJ8: DETSEG
564: GETJ5: HRRZ TAC,HILOC(JDAT)
565: SUBI TAC,1
566: PUSHJ P,BLTUP
567: MOVE TAC,HILOC(PROG)
568: SUBI TAC,1
569: IORI TAC,1777
570: MOVEM TAC,FILLEN(PROG)
571: REMAP FILLEN,
572: CAIA
573: JRST GETDN2
COMCSS page# 0014 next prev
575:
576:
577: POP P,DDB
578: MOVEI DAT,TTOBUF(DDB)
579: PUSHJ P,INLMES
580: ASCIZ /
581: COULDN'T GET YOU A SEGMENT. WILL TRY TO LET YOU WIN WITH SETPR2.
582: /
583: HLRZ TAC,PROG
584: MOVEM TAC,JOBCOR(PROG)
585: ADDI TAC,1
586: MOVEM TAC,JOBFF(PROG)
587: HRLM TAC,JOBSA(PROG)
588: SUB TAC,FILLEN(PROG)
589: MOVSI TAC,-2(TAC)
590: SKIPL HILOC(PROG)
591: TLZ TAC,1
592: HRR TAC,FILLEN(PROG)
593: ADDI TAC,1+3
594: PUSHJ P,STPR2
595: JRST GETDN1
596:
597: GETERR: PUSHJ PDP,SGREL
598: GETERA: JSP TAC,PHOLD
599: ASCIZ /?
600: NOT A DUMP FILE/
601:
602: GETDN2: SKIPN TAC,HINAME(JDAT)
603: JRST GETDON
604: LDB TAC1,PSEGN
605: MOVE DDB,NJOBS(TAC1)
606: IFE FTSTAT,<CAIG DDB,1
607: MOVEM TAC,JOBNAM(TAC1)
608: >
609: IFN FTSTAT,<
610: CAILE DDB,1
611: JRST GETDON
612: MOVEM TAC,JOBNAM(TAC1)
613: PUSH P,J
614: MOVE J,TAC1
615: PUSHJ P,NAMSTT
616: POP P,J
617: >
618: GETDON: POP P,DDB
619: MOVEI DAT,TTOBUF(DDB)
620: GETDN1: SKIPE TAC,NEWCOR(PROG)
621: CAMG TAC,JOBCOR(JDAT)
622:
623:
624: MOVE TAC,JOBCOR(JDAT)
625: JUMPLE TAC,CPOPJ
626: IORI TAC,1777
627: HLRZ TAC1,PROG
628: CAMN TAC1,TAC
629: POPJ P,
630: PUSHJ PDP,RUNCOR
631: JFCL
632: POPJ P,
COMCSS page# 0015 next prev
634:
635:
636: SAVJB: SETZM NEWCOR(PROG)
637: CAIA
638:
639: SSAVJA: SETOM NEWCOR(PROG)
640: MOVEM AC1,FILLEN(PROG)
641:
642: TLNN TAC1,DVDSK
643: MOVEM TAC,FILLEN(PROG)
644: SETZM FILDAT(PROG)
645: TLNE TAC1,DVDSK
646: CLOSE 0,CLSOUT
647: ENTER 0,FILNAM
648: JRST SAV4
649: MOVE TAC,DMPWRD(PROG)
650: MOVEM TAC,FILLEN(PROG)
651: MOVE TAC,JOB41(JDAT)
652: MOVEM TAC,JOBS41(JDAT)
653: SKIPN NEWCOR(PROG)
654: JRST SAVJ1
655: LDB TAC,PSEGN
656: JUMPE TAC,SAVJ1
657: HLRZ TAC1,JBTADR(TAC)
658: ADDI TAC1,1
659: MOVNS TAC1
660: MOVSS TAC1
661: HRRI TAC1,377777
662: MOVEM TAC1,NEWCOR(PROG)
663: HLRO TAC1,FILLEN(PROG)
664: SETCM TAC1,TAC1
665: IORI TAC1,177
666: ADDI TAC1,JOBSAV+1+1
667: LDB TAC,PSEGN
668: LDB TAC,[POINT 9,JOBCRD(TAC),8]
669: HRL TAC1,TAC
670: LDB TAC,PSEGN
671: MOVE TAC,JBTSTS(TAC)
672: TLNE TAC,JWP
673: TLO TAC1,(1B0)
674: MOVEM TAC1,JOBRL2(PROG)
675: MOVEM TAC1,HILOC(PROG)
COMCSS page# 0016 next prev
677:
678:
679: LDB TAC,PSEGN
680: MOVE TAC,JOBNAM(TAC)
681: CAMN TAC,JOBNAM(J)
682: SETZ TAC,
683: MOVEM TAC,HINAME(JDAT)
684: JRST SAVJ3
685:
686: SAVJ1: SETZM HILOC(JDAT)
687: SETZM JOBRL2(PROG)
688: SETZM HINAME(JDAT)
689: SETZM NEWCOR(JDAT)
690: SAVJ3: SETZM DMPEND(PROG)
691: HLRO TAC,FILLEN(PROG)
692: SUBI TAC,JOBSAV
693: ADD TAC,USRREL(PID)
694: JUMPL TAC,NOROOM
695: HLRO TAC,FILLEN(PROG)
696: MOVNS TAC
697: ADDI TAC,JOBSAV
698: MOVEM TAC,JOBCOR(PROG)
699: OUTPUT 0,FILLEN
700: TRNE IOS,IOBKTL!IODERR!IODTER!IOIMPM
701: JRST SGTERA
702: SKIPN NEWCOR(PROG)
703: JRST SGREL
704: SETZM NEWCOR+1(PROG)
705: OUTPUT 0,NEWCOR
706: LDB TAC,PSEGN
707: JUMPE TAC,SAVJ2
708: HLRZ TAC1,JBTADR(TAC)
709: TRO TAC1,400000
710: MOVEM TAC1,HILOC(PROG)
711: MOVEM TAC1,JOBRL2(PROG)
712: SAVJ2: TRNN IOS,IOBKTL!IODERR!IODTER!IOIMPM
713: JRST SGREL
714: SGTERA: PUSHJ P,SGREL
715: JRST SGTERR
716:
717: SAV4: PUSHJ PDP,SGREL
718: JSP TAC,PHOLD
719: ASCIZ /?
720: ENTER FAILED!/
COMCSS page# 0017 next prev
722: BEGIN SEGCSS ↔ SUBTTL SEGCSS 8 SEPT 69 JAM
723:
724:
725:
726:
727:
728:
729:
730:
731:
732:
733: ↑ACCESS:MOVE TAC,-1(P)
734: MOVE TAC1,JBTPRV(TAC)
735: TLNE TAC1,SEGPRV
736: JRST CPOPJ2
737: MOVE TAC1,PRJPRG(TAC)
738: LDB TAC,[POINT =9,JOBCRD(J),8]
739: TRZE TAC,400
740: JRST ACCES2
741: CAMN TAC1,JOBPPN(J)
742: JRST ACCES1
743: XOR TAC1,JOBPPN(J)
744: TRNE TAC1,-1
745: LSH TAC,3
746: LSH TAC,3
747: ACCES1: TRNN TAC,300
748: JRST CPOPJ2
749: TRNN TAC,200
750: AOS (P)
751: POPJ P,
752:
753: ACCES2: CAMN TAC,-1(P)
754: JRST CPOPJ2
755: POPJ P,
COMCSS page# 0018 next prev
757:
758:
759:
760:
761: ↑ESTSEG:
762: MOVEI J,1
763: MOVSI TAC,JNA!JLOG!JACCT!CMWB
764: ESTSE1: TDNN TAC,JBTSTS(J)
765: JRST ESTSE2
766: CAMGE J,JOBNM1
767: AOJA J,ESTSE1
768: MOVEI J,0
769: POPJ P,
770:
771: ESTSE2:
772: SKIPE JBTADR(J)
773: PUSHJ P,INIJXX
774: SETZM JBTADR(J)
775: MOVSI TAC,JSEG!JNA!JLOG
776: IORM TAC,JBTSTS(J)
777: SETZM NJOBS(J)
778: SETOM JBTLIN(J)
779: SETZM TTIME(J)
780: SETZM XTIME(J)
781: SETZM DSKOPS(J)
782: MOVE TAC,TIMDAT
783: MOVEM TAC,FTIME(J)
784: MOVE TAC,[SIXBIT /*SEG*/]
785: MOVEM TAC,PRJPRG(J)
786: MOVEI TAC,STOPQ
787: MOVNM TAC,JOBQUE(J)
788: AOS (P)
789: JRST REQUE
COMCSS page# 0019 next prev
791:
792:
793:
794:
795:
796: ↑LINKSEG:
797: PUSHJ P,KILSEG
798: PUSH P,J
799: MOVE AC1,J
800: MOVE J,JOBNM1
801: DEFSE1: MOVE TAC,JBTSTS(J)
802: TLNN TAC,JSEG
803: JRST DEFSE2
804: MOVE TAC,JOBNAM(J)
805: MOVE TAC1,JOBPPN(J)
806: CAMN TAC,JOBNAM(AC1)
807: CAME TAC1,JOBPPN(AC1)
808: JRST DEFSE2
809: MOVE TAC,JOBCRD(J)
810: MOVE TAC1,JOBDEV(J)
811: CAMN TAC,JOBCRD(AC1)
812: CAME TAC1,JOBDEV(AC1)
813: JRST DEFSE2
814: MOVE TAC,JOBLOG(J)
815: CAMN TAC,JOBLOG(AC1)
816: PUSHJ P,ACCESS
817: JRST DEFSE2
818: JFCL
819: DEFSE3: MOVE TAC,J
820: POP P,J
821: DPB TAC,PSEGN
822: IFN FTSTAT, <PUSHJ P,SEGSTT
823: LDB TAC,PSEGN
824: >
825: AOS NJOBS(TAC)
826: SKIPE TAC
827: AOS (P)
828: SEGXIT: CAME J,JOB(PID)
829: JRST SEGXT1
830: PUSHJ P,GETPR
831: DATAO APR,TAC
832: SEGXT1: POPJ P,
833:
834: DEFSE2: SOJG J,DEFSE1
835: POP P,J
836: POPJ P,
837:
838: ↑MAKESEG:
839: PUSHJ P,KILSEG
840: PUSH P,J
841: PUSHJ P,ESTSEG
842: JRST DEFSE3
843: MOVE TAC,J
844: POP P,J
845: DPB TAC,PSEGN
846: IFN FTSTAT,<
847: PUSHJ P,SEGSTT
848: LDB TAC,PSEGN
849: >
850: ↑MAKSE2:AOS NJOBS(TAC)
851: MOVE TAC1,JOBNAM(J)
852: MOVEM TAC1,JOBNAM(TAC)
853: IFN FTSTAT,<
854: PUSH P,J
855: MOVE J,TAC
856: PUSHJ P,NAMSTT
857: POP P,J
858: >
859: MOVE TAC1,JOBPPN(J)
860: MOVEM TAC1,JOBPPN(TAC)
861: MOVE TAC1,JOBCRD(J)
862: MOVEM TAC1,JOBCRD(TAC)
863: MOVE TAC1,JOBDEV(J)
864: MOVEM TAC1,JOBDEV(TAC)
865: MOVE TAC1,JOBLOG(J)
866: MOVEM TAC1,JOBLOG(TAC)
867: POPJ P,
COMCSS page# 0020 next prev
869:
870:
871:
872:
873:
874: ↑↑KILSEG:
875: SKIPE JBTPR2(J)
876: JRST [SETZM JBTPR2(J)
877: JRST SEGXIT]
878: PUSH P,J
879: LDB J,PSEGN
880: JUMPN J,KILSE6
881: POP P,J
882: POPJ P,
883:
884: KILSE6: PUSH P,J
885: SKIPA J,JOBNM1
886: KILSE3: SOJLE J,KILSE1
887: CAMN J,-1(P)
888: JRST KILSE3
889: LDB TAC,PSEGN
890: CAMN TAC,(P)
891: JRST KILSE4
892: KILSE7: SKIPN AC1,JBTDTS(J)
893: JRST KILSE3
894: KILSE5: LDB TAC,PDSEGN
895: JUMPE TAC,KILSE3
896: CAME TAC,(P)
897: AOJA AC1,KILSE5
898: KILSE4: POP P,J
899: KILSE2: SOSGE NJOBS(J)
900: PUSHJ P,[
901: PUSHACS
902: PUSHJ P,DISMES
903: ASCIZ /NJOBS WENT NEGATIVE AT KILSE2
904: /
905: POPACS
906: SETZM NJOBS(J)
907: POPJ P,]
908: POP P,J
909: MOVEI TAC,0
910: DPB TAC,PSEGN
911: IFN FTSTAT,<
912: PUSHJ P,SEGSTT
913: LDB TAC,PSEGN
914: >
915: JRST SEGXIT
916:
917:
918: KILSE1: POP P,J
919: PUSHJ P,ZEROSEG
920: MOVE TAC,NJOBS(J)
921: CAIE TAC,1
922: PUSHJ P,NZERR
923: JRST KILSE2
924:
925: NZERR: PUSHACS
926: PUSHJ P,DISMES
927: ASCIZ /NJOBS NOT ZERO AT KILSEG
928: /
929: POPACS
930: POPJ P,
COMCSS page# 0021 next prev
932:
933:
934: ZEROSEG:PUSH P,JDAT
935: ZERO1: MOVE JDAT,JBTADR(J)
936: SETZM TAC
937: PUSHJ P,CORE0
938: JRST ZERO5
939: MOVE TAC,JOBNM1
940: ZERO3: LDB TAC1,[POINT 6,JBTSTS(TAC),35]
941: CAME TAC1,J
942: ZERO4: SOJG TAC,ZERO3
943: JUMPE TAC,ZERO2
944: SKIPN JBTST2(TAC)
945: JRST ZERO4
946: MOVSI TAC1,SPWST1!SPWST2
947: PSYNC SPWCSC
948: ANDCAM TAC1,JBTST2(TAC)
949: XSYNC SPWCSC
950: JRST ZERO4
951:
952: ZERO2: MOVSI TAC,JSEG!JWP!JNA!JLOG!JACCT!RUN
953: ANDCAM TAC,JBTSTS(J)
954: SETZM JOBNAM(J)
955: SETZM PRJPRG(J)
956: MOVEI TAC,NULQ
957: MOVNM TAC,JOBQUE(J)
958: PUSHJ P,REQUE
959: PUSHJ P,FBFLUSH
960: POP P,JDAT
961: POPJ P,
962:
963: ZERO5: PUSHJ P,WSCHED
964: JRST ZERO1
COMCSS page# 0022 next prev
966:
967:
968:
969:
970: ↑↑FLUSHSEG:
971: PUSHJ P,KILSEG
972: SKIPN AC1,JBTDTS(J)
973: POPJ P,
974: PUSH P,J
975: FLUSH1: MOVE J,(AC1)
976: JUMPE J,FLUSH2
977: JUMPL J,FLUSH6
978: MOVE TAC1,JOBNM1
979: ANDI J,77
980: FLUSH3: LDB TEM,[POINT 6,JBTSTS(TAC1),35]
981: CAMN TEM,J
982: FLUSH6: AOJA AC1,FLUSH1
983: CAME TAC1,(P)
984: SKIPN DAT,JBTDTS(TAC1)
985: JRST FLUSH5
986: FLUSH4: LDB TEM,[POINT 6,(DAT),35]
987: JUMPE TEM,FLUSH5
988: CAMN TEM,J
989: AOJA AC1,FLUSH1
990: AOJA DAT,FLUSH4
991:
992: FLUSH5: SOJG TAC1,FLUSH3
993: MOVE TAC,JBTSTS(J)
994: TLNN TAC,JNA
995: AOJA AC1,FLUSH1
996: PUSH P,AC1
997: PUSHJ P,ZEROSEG
998: SKIPE NJOBS(J)
999: PUSHJ P,NZERR
1000: POP P,AC1
1001: AOJA AC1,FLUSH1
1002:
1003: FLUSH2: POP P,J
1004: MOVE AC1,JBTDTS(J)
1005: MOVEI AC2,(AC1)
1006: FLUSH7: SKIPLE TAC,(AC2)
1007: FLUSH8: AOJA AC2,FLUSH7
1008: MOVEM TAC,(AC1)
1009: JUMPE TAC,FLUSH9
1010: AOJA AC1,FLUSH8
1011:
1012: FLUSH9: CAME AC1,JBTDTS(J)
1013: POPJ P,
1014: PUSHJ P,FSGIVE
1015: SETZM JBTDTS(J)
1016: POPJ P,
1017:
1018: ↑↑DSFLUSH:
1019: SKIPN AC1,JBTDTS(J)
1020: POPJ P,
1021: DSFL1: MOVSI TAC,400000
1022: ANDCAB TAC,(AC1)
1023: JUMPE TAC,CPOPJ
1024: AOJA AC1,DSFL1
1025:
1026:
COMCSS page# 0023 next prev
1028:
1029:
1030:
1031:
1032:
1033:
1034:
1035:
1036:
1037: ↑↑UAPPLY:
1038: PUSH P,DDB
1039: PUSH P,J
1040: MOVEI J,JOBN-1
1041: UAPP1: LDB DDB,PJOBN
1042: CAMN DDB,(P)
1043: JRST UAPP3
1044: UAPP2: SOJG J,UAPP1
1045: POP P,J
1046: POP P,DDB
1047: JRST CPOPJ1
1048:
1049: UAPP3: PUSH P,J
1050: XCT @-3(P)
1051: POP P,J
1052: JRST UAPP2
1053:
1054: BEND SEGCSS
COMCSS page# 0024 next prev
1056: SUBTTL COMCSS 4 AUG 67
1057:
1058:
1059:
1060:
1061:
1062:
1063:
1064:
1065: ↑CTEXT: PUSHJ PDP,SKIPS
1066: CAIA
1067: ↑CTEXT1:
1068: PUSHJ PDP,SKIPS1
1069:
1070: MOVE UCHN,[POINT 6,TAC1]
1071: LDB TEM,TAKR(DAT)
1072: ANDI TEM,177
1073: CAIG TEM,"Z"+40
1074: CAIGE TEM,"A"+40
1075: JRST CTEX1
1076: SUBI TEM,40
1077: JRST CTEX1
COMCSS page# 0025 next prev
1079: CTEX0: PUSHJ PDP,GETLCCHR
1080: CTEX1: PUSHJ PDP, CTEX
1081: TRC TEM,40
1082: TLNE UCHN,770000
1083: IDPB TEM,UCHN
1084: JRST CTEX0
1085:
1086:
1087: CTEX: CAIL TEM, "0"
1088: CAILE TEM, "Z"
1089: JRST CTEXA
1090: CAILE TEM, "9"
1091: CAIL TEM, "A"
1092: POPJ PDP,
1093: CTEXA:
1094: CAIN TEM,":"
1095: PUSHJ PDP,GETLCCHR
1096: CAIE TEM,0
1097: JRST TPOPJ
1098: CTXCNC: MOVSI TAC1,'HAL'
1099: MOVEI TEM,12
1100: DPB TEM,TAKR(DAT)
1101: JRST TPOPJ
1102:
1103:
1104: ↑GETLCCHR:
1105: PUSHJ P,GETCHR
1106: CAIG TEM,"Z"+40
1107: CAIGE TEM,"A"+40
1108: POPJ P,
1109: SUBI TEM,40
1110: POPJ P,
COMCSS page# 0026 next prev
1112:
1113:
1114:
1115:
1116:
1117:
1118:
1119:
1120: SKIPSJ: PUSHJ P,SKIPS1
1121: POPJ P,
1122:
1123: SKIPS: PUSHJ PDP,GETLCCHR
1124: SKIPS1: MOVEI TAC1,0
1125: LDB TEM,TAKR(DAT)
1126: ANDI TEM,177
1127: CAIE TEM,"."
1128: CAIN TEM,15
1129: SKIPSA: PUSHJ PDP,GETLCCHR
1130: SKIPSB: JUMPE TEM,SKIPS3
1131: CAIN TEM,";"
1132: JRST SKIPS3
1133: PUSHJ PDP,SPCHEK
1134: JRST SKIPS2
1135: TLNE TAC,BREAKB
1136: JRST SKIPS3
1137: SKIPS2: CAIG TEM,40
1138: JRST SKIPSA
1139: POPJ PDP,
1140:
1141: SKIPS3: JUMPE TEM,CTXCNC
1142: MOVEI TEM,12
1143: JRST TPOPJ
COMCSS page# 0027 next prev
1145:
1146:
1147:
1148:
1149:
1150:
1151: ↑COMEND:
1152: PUSHJ P,SKIPS1
1153: ↑COMERP:
1154: POP PDP,UCHN
1155: ↑COMERA:
1156: PUSHJ PDP,GETCHR
1157:
1158:
1159:
1160:
1161:
1162:
1163:
1164:
1165:
1166: ↑COMERR:
1167: MOVE UCHN,TITCTR(DEVDAT)
1168: PUSHJ PDP,TRESCN
1169: COMERL: PUSHJ PDP,GETCHR
1170: JUMPE TEM,COMER1
1171: CAMN UCHN,TITCTR(DEVDAT)
1172: JRST COMER1
1173: PUSHJ PDP,OUTCHS
1174: JRST COMERL
1175:
1176: COMER1: PUSHJ PDP,SETBFI
1177: MOVEI TEM,"?"
1178: PUSHJ PDP,OUTCHS
1179: MOVSI J,NOJOBN!NOINCK
1180: IORM J,-1(P)
1181: MOVSI J,NOPER!NOCRLF
1182: ANDCAM J,-1(P)
1183: TDZA ITEM,ITEM
COMCSS page# 0028 next prev
1185:
1186:
1187:
1188:
1189:
1190: ↑ERRMES:
1191: TDZA ITEM,ITEM
1192:
1193:
1194:
1195:
1196:
1197:
1198:
1199:
1200: ↑CRLF: MOVEI TAC,[BYTE (7) 15,12,0]
1201:
1202:
1203:
1204:
1205:
1206:
1207:
1208:
1209:
1210: ↑CONMES:
1211: HRLI TAC,440700
1212: PUSH PDP,TAC
1213: CON0: ILDB TEM,(PDP)
1214: JUMPE TEM,TPOPJ
1215: ↑TYO:
1216: ↑CONTYO:
1217: PUSHJ PDP,OUTCHS
1218: JRST CON0
COMCSS page# 0029 next prev
1220:
1221:
1222:
1223:
1224:
1225:
1226: ↑INLMES:
1227: POP PDP,TAC
1228: PUSHJ PDP,CONMES
1229: JRST 1(TAC)
1230:
1231:
1232:
1233:
1234:
1235:
1236: ↑PRQM: MOVEI TEM,"?"
1237: XCT TYO
1238: POPJ P,
1239:
1240: PRSPC: MOVEI TAC,[ASCIZ / /]
1241: JRST CONMES
1242:
1243:
1244:
1245:
1246:
1247:
1248: ↑NOTENF:
1249: JSP TAC,ERRMES
1250:
1251: ASCIZ /TOO FEW ARGUMENTS
1252: /
1253:
1254:
1255:
1256:
1257:
1258: ↑PRCRCC:PUSHJ P,CRLF
1259: ↑PRCNTC:PUSHJ P,INLMES
1260: ASCIZ /↑C
1261: /
1262: ↑PRPER: MOVEI TEM,"."
1263: JRST OUTCHS
1264:
COMCSS page# 0030 next prev
1266:
1267:
1268:
1269:
1270:
1271:
1272:
1273:
1274:
1275: ↑DEASG: LDB UCHN, PJOBN
1276: CAME UCHN, ITEM
1277: POPJ PDP,
1278: PUSH PDP,ITEM
1279: MOVSI UCHN,DVDIRIN
1280: ANDCAM UCHN,DEVMOD(DEVDAT)
1281: SETZM DEVLOG(DEVDAT)
1282: MOVEI TAC1,ASSCON
1283: TDNE TAC1,DEVMOD(DEVDAT)
1284: AOS -1(PDP)
1285: PUSHJ PDP,RELEA6
1286: POP PDP,ITEM
1287: POPJ PDP,
1288:
1289:
1290:
1291:
1292:
1293:
1294:
1295:
1296:
1297: ↑DEASTY:
1298: HRRZS DDB
1299: PUSH PDP,DEVDAT
1300: HLRZ DEVDAT,DEVLST
1301: DEA1: CAIE DEVDAT,@(PDP)
1302: PUSHJ PDP, DEASG
1303: JFCL
1304: HLRZ DEVDAT, DEVSER(DEVDAT)
1305: JUMPN DEVDAT, DEA1
1306: POP PDP,DEVDAT
1307: POPJ PDP,
COMCSS page# 0031 next prev
1309:
1310:
1311:
1312:
1313:
1314:
1315:
1316:
1317:
1318:
1319:
1320:
1321:
1322: C←BUFPNT
1323: R←DSER
1324:
1325: ↑DECIN1:
1326: ↑DECIN: MOVEI R,=10
1327: JRST ANYRIN
1328:
1329: ↑OCTINS:PUSHJ P,GETLCCHR
1330: ↑OCTIN: MOVEI R,10
1331: ANYRIN: PUSHJ PDP,SKIPS1
1332:
1333:
1334: OCT0: CAIL TEM,175
1335: JRST CPOPJ2
1336: CAIE TEM,";"
1337: CAIN TEM," "
1338: JRST CPOPJ2
1339: CAIE TEM,"-"
1340: CAIN TEM,15
1341: JRST CPOPJ2
1342: CAIE TEM,","
1343: CAIN TEM,"["
1344: JRST CPOPJ2
1345: SUBI TEM,60
1346: JUMPL TEM,CPOPJ1
1347: CAML TEM, R
1348: JRST CPOPJ1
1349: IMUL TAC1, R
1350: ADD TAC1,TEM
1351: ↑CONTYI:
1352: XXTYI:
1353: PUSHJ PDP,GETCHR
1354: JRST OCT0
COMCSS page# 0032 next prev
1356:
1357:
1358:
1359:
1360:
1361:
1362:
1363:
1364:
1365: IFN FTLOGIN,<
1366: PJPGNO: PUSHJ PDP,SKIPS1
1367: CAIE TEM,"["
1368: POPJ PDP,
1369: PUSHJ PDP,PJPG1
1370: HLL AC2,TAC1
1371: CAIE TEM,","
1372: JRST PJPG2
1373: PUSHJ PDP,PJPG1
1374: HLR AC2,TAC1
1375: CAIN TEM,"]"
1376: PUSHJ PDP,GETLCCHR
1377: JRST CPOPJ1
1378:
1379: PJPG1: PUSHJ PDP,CTEXT
1380: JUMPE TAC1,TPOPJ
1381: TLNN TAC1,7777
1382: LSH TAC1,-14
1383: TLNN TAC1,77
1384: LSH TAC1,-6
1385: PUSHJ PDP,SKIPSB
1386: POPJ P,
1387:
1388: PJPG2: CAIE TEM,12
1389: POPJ P,
1390: SKIPN TAC1,DSKPPN(J)
1391: MOVE TAC1,PRJPRG(J)
1392: HRR AC2,TAC1
1393: JRST CPOPJ1
1394: >
COMCSS page# 0033 next prev
1396:
1397:
1398:
1399:
1400:
1401:
1402: JIFMIN←←JIFSEC*=60
1403: JIFSC2←←JIFSEC/2
1404:
1405: REPEAT 0,< ;THIS ROUTINE HAS BEEN REPLACED BY ONE OF THE SAME NAME IN CLKSER
1406:
1407: PRTIME: PUSHJ PDP,HHMM ;DEC 3.16
1408: JUMPE TAC,PR1 ;DO NOT PRINT HOURS OR MINUTES IF 0
1409: PUSHJ PDP,RADX10 ;PRINT BASE 10
1410: PUSHJ PDP,INLMES ;PRINT COLON
1411: ASCIZ /:/
1412: PR1: MOVE TAC,TAC1 ;MOVE TAC,TAC1
1413: IDIVI TAC,JIFSEC ;JIFFIES PER SECOND
1414: PUSHJ PDP,RADX10 ;PRINT SECONDS
1415: PUSHJ PDP,PRPER ;PRINT PERIOD
1416: MOVE TAC,TAC1 ;NO OF JIFFIES(HUNDRETHS)
1417: IMULI TAC,=100 ;CONVERT TO HUNDRETHS
1418: IDIVI TAC,JIFSEC
1419: CAIL TAC1,JIFSC2 ;ROUND IF GREATER THAN HALF
1420: AOS TAC
1421: MOVEI TEM,"0" ;PRINT LEADING 0 IF NO.
1422: JRST PR2 ;DEC 3.16
1423:
1424: HHMM: IDIVI TAC,JIFMIN ;DEC 3.16, REST OF PAGE.
1425: PUSH PDP,TAC1
1426: IDIVI TAC,=60
1427: IMULI TAC,=100
1428: ADD TAC,TAC1
1429: POP PDP,TAC1
1430: POPJ PDP,
1431:
1432: PRTIM1: PUSHJ PDP,HHMM
1433: MOVEI TEM,"0"
1434: CAIGE TAC,=1000
1435: XCT TYO
1436: CAIGE TAC,=100
1437: XCT TYO
1438: PR2: CAIGE TAC,=10
1439: XCT TYO
1440: JRST DECLF
1441: >
COMCSS page# 0034 next prev
1443: SUBTTL ERRCON 4 AUG 67
1444:
1445:
1446:
1447:
1448:
1449:
1450:
1451:
1452:
1453:
1454:
1455:
1456:
1457:
1458: ↑APRILM:
1459: SETZM APRERR(PID)
1460: MOVE ITEM,JOB(PID)
1461: TRNN TAC,ILM
1462: JRST APRNXM
1463: MOVE TAC,APRPC(PID)
1464: TLNE TAC,USRMOD
1465: JRST APRIL2
1466: PUSHJ P,KILSPW
1467: JRST APRIL1
1468: APRIL2: HRRZS TAC
1469: CAMG TAC,USRREL(PID)
1470: JRST APRIL1
1471: TRNN TAC,400000
1472: JRST APRJRS
1473: LDB TAC1,PSEGN
1474: JUMPE TAC1,APRJRS
1475: HLRZ TAC1,JBTADR(TAC1)
1476: CAILE TAC,400000(TAC1)
1477: JRST APRJRS
1478: APRIL1: JSP TAC,ERRPNT
1479: ASCIZ /ILL MEM REF/
1480: JRST APRSCD
1481:
1482: APRJRS: JSP TAC,ERRPNT
1483: ASCIZ /PC EXCEEDS MEM BOUND/
1484: JRST APRSCD
COMCSS page# 0035 next prev
1486: APRNXM: TRNN TAC,NXM
1487: JRST PDLAPR
1488: JSP TAC,ERRPNT
1489: ASCIZ /NON EX MEM/
1490: JRST APRSCD
1491:
1492: PDLAPR: TRNN TAC,POV
1493: JRST APRCNS
1494: JSP TAC,ERRPNT
1495: ASCIZ /PDL OV/
1496: APRSCD: MOVE TAC1,APRPC(PID)
1497: JRST PCPNT
1498:
1499:
1500:
1501:
1502: APRCNS: TRNN TAC,CNS
1503: JSP DAT,UERROR
1504: JSP TAC,ERRPNT
1505: ASCIZ /CONS TRAP/
1506: JRST APRSCD
1507:
COMCSS page# 0036 next prev
1509:
1510:
1511: ↑SPWMES:
1512: JSP TAC,ERRPNT
1513: ASCIZ /SPACEWAR LOSSAGE/
1514: MOVE TAC,JBTST2(J)
1515: TLNN TAC,ILMSPW
1516: JRST SPWNXM
1517: HRRZS TAC
1518: HLRZ TAC1,JBTADR(J)
1519: CAMG TAC,TAC1
1520: JRST SPWILM
1521: TRNN TAC,400000
1522: JRST SPWIPC
1523: LDB TAC1,PSEGN
1524: JUMPE TAC1,SPWIPC
1525: HLRZ TAC1,JBTADR(TAC1)
1526: TRO TAC1,400000
1527: CAMLE TAC,TAC1
1528: JRST SPWIPC
1529: SPWILM: PUSHJ P,INLMES
1530: ASCIZ/ - ILL MEM REF/
1531: JRST SPWMS1
1532: SPWIPC: PUSHJ P,INLMES
1533: ASCIZ/ - PC EXCEEDS MEM BOUNDS/
1534: JRST SPWMS1
1535: SPWNXM: TLNN TAC,NXMSPW
1536: JRST SPWPDL
1537: PUSHJ P,INLMES
1538: ASCIZ/ - NON EX MEM/
1539: JRST SPWMS1
1540: SPWPDL: TLNN TAC,POVSPW
1541: JRST SPWCNS
1542: PUSHJ P,INLMES
1543: ASCIZ/ - PDL OV/
1544: JRST SPWMS1
1545: SPWCNS: TLNN TAC,CNSSPW
1546: JRST SPWTMX
1547: PUSHJ P,INLMES
1548: ASCIZ/ - CONS TRAP/
1549: SPWTMX: TLNN TAC,ILLTMO
1550: JRST SPWMS1
1551: PUSHJ P,INLMES
1552: ASCIZ/ - TIME OUT/
1553: SPWMS1:
1554: HRRZ TAC1,JBTST2(ITEM)
1555: HRLI TAC1,USRMOD
1556: PUSHJ PDP,KILSPW
1557: JRST PCPNT
COMCSS page# 0037 next prev
1559:
1560:
1561:
1562:
1563: ↑ADRERR:
1564: JSP TAC,ERRDEV
1565: UADER1: ASCIZ /ADDRESS CHECK FOR /
1566: JRST DEVEXC
1567:
1568:
1569:
1570: ↑UADRER:
1571: MOVEI TAC,UADER1
1572: JRST ERRPTU
1573:
1574:
1575:
1576:
1577: ↑UADERR:
1578: JSP TAC,UUOMES
1579: ASCIZ /ADDRESS OUT OF BOUNDS, UUO /
COMCSS page# 0038 next prev
1581:
1582:
1583:
1584:
1585:
1586:
1587:
1588: ↑ERROR:
1589: MOVEM P,ERRPDL(PID)
1590: MOVE P,ERRPD(PID)
1591: AOBJN P,.+1
1592: PUSHACS
1593: PUSH P,DAT
1594: PUSHJ P,DISDATE
1595: PUSHJ P,DISMES
1596: ASCIZ /πππERROR IN MONITOR AT /
1597: POP P,TAC
1598: SUBI TAC,1
1599: PUSHJ P,DISOCT
1600: PUSHJ P,DISMES
1601: ASCIZ/
1602: /
1603: SETOM DISFLAG
1604: PUSHJ P,DISFLUSH
1605: POPACS
1606: DEBCHECK
1607: JRST AUTOLOAD
COMCSS page# 0039 next prev
1609:
1610:
1611:
1612: ↑UERROR:
1613: MOVE ITEM,JOB(PID)
1614: ↑CERROR:
1615: JSP TAC,ERRPNT
1616: ASCIZ /?
1617: ERROR IN MONITOR/
1618: MOVE TAC1,-1(PDP)
1619: JRST PCPNT
1620:
1621:
1622:
1623:
1624:
1625:
1626:
1627: ↑ILLINP:
1628: JSP TAC,ERRPTU
1629: ASCIZ /OUTPUT /
1630: PUSHJ PDP,ERNAM
1631: JSP TAC,UUOMES
1632: ASCIZ / CANNOT DO INPUT/
COMCSS page# 0040 next prev
1634:
1635:
1636:
1637:
1638: ↑BTLERR:
1639: JSP TAC,ERRPTU
1640: ASCIZ /?
1641: /
1642: PUSHJ PDP,ERNAM
1643: JSP TAC,UUOMES
1644: ASCIZ / BUFFER TOO LARGE, UUO/
1645:
1646:
1647:
1648:
1649:
1650: ↑ILLOUT:
1651: JSP TAC,ERRPTU
1652: ASCIZ /INPUT /
1653: PUSHJ PDP,ERNAM
1654: JSP TAC,UUOMES
1655: ASCIZ / CANNOT DO OUTPUT/
1656:
1657:
1658:
1659:
1660:
1661: ↑ILLMOD:
1662: JSP TAC,ERRPTU
1663: ASCIZ /ILLEGAL DATA MODE FOR /
1664: JRST DEVEXC
1665:
1666:
1667:
1668:
1669:
1670: ↑IOIERR:
1671: JSP TAC,ERRPTU
1672: ASCIZ /IO TO UNASSIGNED CHANNEL/
1673: JRST UUOPCP
COMCSS page# 0041 next prev
1675:
1676:
1677:
1678:
1679: ↑UUOERR:
1680: SKIPE SPWUUF(PID)
1681: CONSZ PI,77000
1682: CAIA
1683: JRST SPWERR
1684: MOVEM J,TSAVJ#
1685: MOVE J,JOB(PID)
1686: MOVE TAC1,UUOPC(J)
1687: JUMPE J,UUOER3
1688: TLNE TAC1,USRMOD
1689: JRST UUOER1
1690: UUOER3: MOVEM P,ERRPDL
1691: MOVE P,ERRPD(PID)
1692: ADD P,[1,,1]
1693: UUOER1: JSP TAC,ERRPTU
1694: ASCIZ /ILLEGAL UUO/
1695: MOVE TAC1,UUOPC(J)
1696: TLNE TAC1,USRMOD
1697: SOJA TAC1,PCPNT
1698: PUSHACS
1699: PUSHJ P,DISDATE
1700: PUSHJ P,DISMES
1701: ASCIZ /ππππILLEGAL UUO FROM EXEC AT UUO LEVEL
1702: UUO AT /
1703: MOVE TAC,UUOPC(J)
1704: MOVEI TAC,-1(TAC)
1705: PUSHJ P,DISOCT
1706: PUSHJ P,DISTAB
1707: PUSHJ P,DISJOB
1708: PUSHJ P,DISMES
1709: ASCIZ / UUOOPC = /
1710: MOVE TAC,UUOOPC(J)
1711: PUSHJ P,DISOCT
1712: PUSHJ P,DISMES
1713: ASCIZ / P= /
1714: MOVE TAC,ERRPDL
1715: PUSHJ P,DISOCT
1716: CAMN J,TSAVJ
1717: JRST UUOER2
1718: PUSHJ P,DISMES
1719: ASCIZ /J WAS: /
1720: MOVE TAC,TSAVJ
1721: PUSHJ P,DISOCT
1722: UUOER2: PUSHJ P,DISMES
1723: ASCIZ /
1724: FIND A WIZARD OR TYPE: POPJ 3,$X
1725: /
1726: PUSHJ P,SYSFIX
1727: JFCL
1728: JFCL
1729: PUSHJ P,DISFLUSH
1730: POPACS
1731: PUSHJ P,DDTCALL
1732: MOVE TAC1,UUOPC(J)
1733: SOJA TAC1,PCPNT
COMCSS page# 0042 next prev
1735:
1736:
1737:
1738:
1739:
1740:
1741: ↑ILLINS:
1742: HLRZ TAC,UUO
1743: ANDI TAC,777600
1744: CAIN TAC,(<JRST 4,>)
1745: JRST HALT
1746: JSP TAC,ERRPTU
1747: ASCIZ /ILL INST./
1748: JRST UUOPCP
1749:
1750: ↑HALT: MOVE J,JOB(PID)
1751: PUSHJ P,TTYERP
1752: PUSHJ P,INLMES
1753: ASCIZ /HALT/
1754: SOS TAC1,UUOPC(J)
1755: PUSHJ P,PCP
1756: PUSHJ P,PRCRCC
1757: HRRM UUO,UUOPC(J)
1758: PUSHJ P,TTYSTC
1759: PUSHJ P,SETSTP
1760: SKIPN INTACT(PID)
1761: JRST USRXIT
1762: JRST ESTOP
COMCSS page# 0043 next prev
1764:
1765:
1766:
1767:
1768:
1769: ↑DEVHNG:
1770: MOVEI TAC,IOACT
1771: ANDCAM TAC,DEVIOS(DEVDAT)
1772: TRZ IOS,IOACT
1773: JSP TAC,ERRDEV
1774: ASCIZ /HUNG /
1775: JRST DEVEXC
1776:
1777:
1778:
1779:
1780:
1781: ↑BADDIR:
1782: JSP TAC,ERRPNT
1783: ASCIZ /BAD DIRECTORY FOR /
1784:
1785:
1786:
1787:
1788:
1789:
1790: ↑DEVEXC:
1791: PUSHJ PDP,ERNAM
1792: MOVE TAC,(P)
1793: MOVE TAC1,DEVMOD(TAC)
1794: TLNN TAC1,DVDSK
1795: JRST EXCALP
1796: MOVSI IOS,GOBIT
1797: ANDCAB IOS,DEVIOS(TAC)
1798: JRST EXCALP
COMCSS page# 0044 next prev
1800:
1801:
1802:
1803:
1804:
1805:
1806:
1807: ↑HNGSTP:
1808: PUSH PDP,IOS
1809: PUSH PDP,DEVDAT
1810: PUSHJ PDP,TTYFUW
1811: PUSHJ PDP,PRQM
1812: PUSHJ PDP,ERNAM
1813: PUSHJ PDP,INLMES
1814: ASCIZ / OK?
1815: /
1816: PUSHJ P,PRCRCC
1817: PUSHJ PDP,TTYSTC
1818: POP PDP,DEVDAT
1819: POP PDP,IOS
1820: PUSHJ PDP,STOP1
1821: JRST WSCHED
COMCSS page# 0045 next prev
1823:
1824:
1825:
1826:
1827:
1828:
1829: ↑HNGMES:
1830: PUSH P,IOS
1831: PUSH P,DEVDAT
1832: PUSH P,AC1
1833: PUSH P,AC2
1834: PUSH P,AC3
1835: PUSH P,DAT
1836: PUSH P,TEM
1837: PUSH P,TAC1
1838: PUSH P,TAC
1839: MOVE J,JOB(PID)
1840: PUSHJ P,TTYFUW
1841: POP P,TAC
1842: PUSHJ P,CONMES
1843: PUSHJ P,PRCRCC
1844: PUSHJ P,TTYSTC
1845: PUSHJ P,STOP1
1846: POP P,TAC1
1847: POP P,TEM
1848: POP P,DAT
1849: POP P,AC3
1850: POP P,AC2
1851: POP P,AC1
1852: POP P,DEVDAT
1853: POP P,IOS
1854: JRST WSCHED
COMCSS page# 0046 next prev
1856:
1857:
1858:
1859:
1860:
1861:
1862:
1863:
1864:
1865:
1866:
1867:
1868:
1869: ↑ERRPTU:
1870: SKIPN J,JOB(PID)
1871: ↑ERRDEV:
1872: LDB J,PJOBN
1873: ↑ERRPNT:
1874: JUMPN J,.+2
1875: SETOM NULBAD(PID)
1876: PUSH P,DAT
1877: SKIPL J
1878: CAIL J,JOBN
1879: CAIA
1880: JRST ERRZZ2
1881: PUSHACS
1882: PUSHJ P,DISDATE
1883: PUSHJ P,DISMES
1884: ASCIZ/ππππERRPTU CALLED WHEN NULL JOB RUNNING
1885: /
1886: POPACS
1887: DEBCHECK
1888: SKIPN DISFLAG
1889: JRST ERRZZ2
1890: PUSHJ P,DISFLUSH
1891: JRST AUTOLOAD
1892:
1893: ERRZZ2: PUSH P,DDB
1894: PUSH P,TAC
1895: MOVE JDAT,JBTDAT(J)
1896: IFN JDMPRG,<
1897: MOVE PROG,JBTADR(J)
1898: >
1899: PUSHJ P,TTYERP
1900: PUSHJ P,INLMES
1901: ASCIZ /?
1902: ERROR IN JOB /
1903: PUSHJ P,PJOB
1904: JRST INLMES
COMCSS page# 0047 next prev
1906:
1907:
1908:
1909:
1910:
1911: ↑UUOMES:
1912: MOVE J,JOB(PID)
1913: SKIPE SPWUUF(PID)
1914: CONSZ PI,77000
1915: CAIA
1916: JRST SPWERR
1917: PUSH P,TAC
1918: PUSHJ P,TTYERP
1919: POP P,TAC
1920: PUSHJ P,CONMES
1921: ↑UUOPCP:
1922: MOVE TAC1,UUOPC(J)
1923:
1924: SOJA TAC1,PCPNT
1925:
1926:
1927:
1928:
1929:
1930:
1931:
1932:
1933:
1934:
1935:
1936: ↑PCPNT: PUSHJ P,PCP
1937: TLNE TAC1,USRMOD
1938: JRST PCSTOP
COMCSS page# 0048 next prev
1940:
1941:
1942:
1943:
1944:
1945:
1946:
1947:
1948: ↑EXCALP:
1949: PUSHJ P,INLMES
1950: ASCIZ /; UUO/
1951: MOVE TAC1,UUOPC(J)
1952: SUBI TAC1,1
1953: PUSHJ P,PCP
1954: ↑PCSTOP:
1955: PUSHJ P,HOLD
1956: POP P,DDB
1957: JRST TPOPJ
1958:
1959:
1960:
1961:
1962:
1963:
1964:
1965: XMODE: ASCIZ / AT EXEC /
1966: UMODE: ASCIZ / AT USER /
1967:
1968: PCP: MOVEI TAC,XMODE
1969: TLNE TAC1,USRMOD
1970: MOVEI TAC,UMODE
1971: PUSHJ PDP,CONMES
1972: HRRZ TAC,TAC1
1973:
COMCSS page# 0049 next prev
1975:
1976:
1977:
1978:
1979:
1980:
1981: ↑OCTPNT:
1982: PUSH P,TAC1
1983: MOVEI TAC1,10
1984: ANYRDX: PUSH P,ITEM
1985: MOVEI ITEM,(TAC1)
1986: PUSHJ P,OCTP1
1987: POP P,ITEM
1988: POP P,TAC1
1989: POPJ P,
1990:
1991: OCTP1: IDIV TAC,ITEM
1992: HRLM TAC1,(P)
1993: JUMPE TAC,.+2
1994: PUSHJ P,OCTP1
1995: HLRZ TEM,(P)
1996: MOVEI TEM,"0"(TEM)
1997: XCT TYO
1998: POPJ P,
1999:
2000:
2001:
2002:
2003:
2004: ↑RADX10:
2005: PUSH P,TAC1
2006: MOVEI TAC1,12
2007: JRST ANYRDX
COMCSS page# 0050 next prev
2009:
2010:
2011:
2012:
2013:
2014:
2015: ↑ERNAM: PUSHJ P,INLMES
2016: ASCIZ /DEVICE /
2017: SKIPE TAC1,-1(P)
2018: MOVE TAC1,DEVNAM(TAC1)
2019:
2020:
2021:
2022:
2023:
2024:
2025:
2026: ↑PRNAME:
2027: JUMPE TAC1,CPOPJ
2028: MOVEI TAC,0
2029: LSHC TAC,6
2030: MOVEI TEM,40(TAC)
2031: XCT TYO
2032: JRST PRNAME
COMCSS page# 0051 next prev
2034:
2035:
2036:
2037:
2038:
2039:
2040:
2041:
2042: ↑DISOUT:
2043: SETZ J,
2044: PUSHJ P,TTYFND
2045: DISOU1: MOVE TAC,FCTR(DAT)
2046: CAIG TAC,1
2047: JRST TYPGO
2048: ILDB TEM,DISOPT
2049: AOS DISCTR
2050: XCT TYO
2051: MOVE TAC,DISOPT
2052: MOVE AC1,TAC
2053: IBP AC1
2054: HRRZS AC1
2055: CAIGE AC1,DISBUF+DISLEN
2056: JRST DISOU2
2057: MOVEI AC1,DISBUF-1
2058: HRRM AC1,DISOPT
2059: DISOU2: CAME TAC,DISPTR
2060: JRST DISOU1
2061: JRST TYPGO
COMCSS page# 0052 next prev
2063:
2064:
2065:
2066:
2067:
2068: ↑DISFLUSH:
2069: CONSO APR,MAOFF
2070: POPJ P,
2071: CONI CTY,AC1
2072: HRLM AC1,(P)
2073: CONO CTY,0
2074: MOVEI AC1,100000
2075: SOJG AC1,.
2076: SKIPN DAT,TTYTAB+TCONLN
2077: JRST DISFL1
2078: ADDI DAT,TTOBUF
2079: DISFL3: MOVE TAC,TAKR(DAT)
2080: CAMN TAC,PUTR(DAT)
2081: JRST DISFL1
2082: PUSHJ P,GETCHO
2083: PUSHJ P,CTYTYO
2084: JRST DISFL3
2085:
2086: DISFL1: MOVE TEM,DISOPT
2087: SKIPLE DISCTR
2088:
2089: CAME TEM,DISPTR
2090: CAIA
2091: JRST DISFLX
2092: IBP TEM
2093: HRRZS TEM
2094: CAIGE TEM,DISBUF+DISLEN
2095: JRST DISFL4
2096: MOVEI TEM,DISBUF-1
2097: HRRM TEM,DISOPT
2098: DISFL4: ILDB TEM,DISOPT
2099: AOS DISCTR
2100: PUSHJ P,CTYTYO
2101: JRST DISFL1
2102:
2103: DISFLX: HLRZ AC1,(P)
2104: ANDI AC1,7
2105: CONO CTY,(AC1)
2106: POPJ P,
COMCSS page# 0053 next prev
2108:
2109:
2110:
2111:
2112:
2113:
2114: ↑DISTYO:
2115: CONSO APR,MAOFF
2116: JRST CTYTYO
2117: SKIPLE DISCTR
2118: JRST DISTY1
2119: SKIPN DISFLAG
2120: CONO PI,PIOFF
2121: PUSH P,TEM
2122: PUSHJ P,DISFLUSH
2123: POP P,TEM
2124: SKIPN DISFLAG
2125: CONO PI,PION
2126: JRST DISTYO
2127:
2128: DISTY1: SOSL DISCTR
2129: JRST DISTY2
2130: AOS DISCTR
2131: JRST DISTYO
2132:
2133: DISTY2: CONO PI,PIOFF
2134: IDPB TEM,DISPTR
2135: CONO PI,PION
2136: MOVE AC1,DISPTR
2137: IBP AC1
2138: HRRZS AC1
2139: CAIGE AC1,DISBUF+DISLEN
2140: POPJ P,
2141: CONO PI,PIOFF
2142: MOVE AC1,DISPTR
2143: IBP AC1
2144: HRRZS AC1
2145: CAIGE AC1,DISBUF+DISLEN
2146: JRST DISTY3
2147: MOVEI AC1,DISBUF-1
2148: HRRM AC1,DISPTR
2149: DISTY3: CONO PI,PION
2150: POPJ P,
COMCSS page# 0054 next prev
2152:
2153:
2154:
2155:
2156:
2157:
2158: ↑DISMES:
2159: POP P,AC1
2160: HRLI AC1,(<POINT 7,0>)
2161: DISME1: ILDB TEM,AC1
2162: JUMPE TEM,1(AC1)
2163: PUSH P,AC1
2164: PUSHJ P,DISTYO
2165: POP P,AC1
2166: JRST DISME1
2167:
2168:
2169: ↑DISCRLF:
2170: MOVEI TEM,15
2171: PUSHJ P,DISTYO
2172: MOVEI TEM,12
2173: JRST DISTYO
2174:
2175: ↑DISTAB:
2176: MOVEI TEM,11
2177: JRST DISTYO
2178:
2179: ↑DISJOB:
2180:
2181: PUSH P,J
2182: MOVE TAC1,JOBNAM(J)
2183: PUSHJ P,DISSIX
2184: MOVEI TEM,"("
2185: PUSHJ P,DISTYO
2186: MOVE TAC,(P)
2187: PUSHJ P,DISDCP
2188: MOVEI TEM,")"
2189: PUSHJ P,DISTYO
2190: POP P,J
2191: POPJ P,
2192:
COMCSS page# 0055 next prev
2194:
2195:
2196:
2197:
2198:
2199:
2200:
2201:
2202:
2203:
2204:
2205: DISER1: AOS (P)
2206: ↑DISERR:SKIPGE TAC,@(P)
2207: JRST CPOPJ1
2208: ASH TAC,-=23
2209: MOVEI AC1,@(P)
2210: MOVEI AC1,@(AC1)
2211: CAILE TAC,ERRLEN-1
2212: JRST DISER1
2213: JRST @ERRTAB(TAC)
2214:
2215: DEFINE ERRMAC $ (I)
2216: < ERR$I
2217: >
2218: ERRTAB: QQQNAM
2219: ERRLEN←←.-ERRTAB
COMCSS page# 0056 next prev
2221:
2222:
2223: ERRSTR: HRLI AC1,(<POINT 7,0>)
2224: ERRST1: ILDB TEM,AC1
2225: JUMPE TEM,DISER1
2226: PUSH P,AC1
2227: PUSHJ P,DISTYO
2228: POP P,AC1
2229: JRST ERRST1
2230:
2231: ERRCHR: HRRZ TEM,AC1
2232: PUSHJ P,DISTYO
2233: JRST DISER1
2234:
2235: ERROCT: MOVE TAC,(AC1)
2236: PUSHJ P,DISOCT
2237: JRST DISER1
2238:
2239: ERRLOC: MOVE TAC,(AC1)
2240: PUSHJ P,DISLOC
2241: JRST DISER1
2242:
2243: ERRDEC: MOVE TAC,(AC1)
2244: PUSHJ P,DISDEC
2245: JRST DISER1
2246:
2247: ERRSIX: MOVE TAC1,(AC1)
2248: PUSHJ P,DISSIX
2249: JRST DISER1
2250:
2251: ERRDCP: MOVE TAC,(AC1)
2252: PUSHJ P,DISDCP
2253: JRST DISER1
COMCSS page# 0057 next prev
2255:
2256:
2257:
2258: ↑DISLOC:
2259: PUSH P,[=6]
2260: HRLZ TAC1,TAC
2261: DISLC1: TLNE TAC1,700000
2262: JRST DSOCT2
2263: LSH TAC1,3
2264: SOSLE (P)
2265: JRST DISLC1
2266: JRST DSOCT2
2267:
2268:
2269:
2270:
2271:
2272:
2273: ↑DISOCT:
2274: PUSH P,[=12]
2275: MOVE TAC1,TAC
2276: DSOCT2: SETZ TAC,
2277: LSHC TAC,3
2278: MOVEI TEM,"0"(TAC)
2279: PUSH P,TAC1
2280: PUSHJ P,DISTYO
2281: POP P,TAC1
2282: SOSLE (P)
2283: JRST DSOCT2
2284: JRST TPOPJ
2285:
2286:
2287: ↑DISOCH:
2288: PUSH P,TAC
2289: HLLZ TAC1,TAC
2290: PUSH P,[DSOCH1]
2291: PUSH P,[6]
2292: JRST DSOCT2
2293: DSOCH1: MOVEI TEM,","
2294: PUSHJ P,DISTYO
2295: MOVEI TEM,","
2296: PUSHJ P,DISTYO
2297: POP P,TAC1
2298: HRLZ TAC1,TAC1
2299: PUSH P,[6]
2300: JRST DSOCT2
2301:
2302: ↑DISDCP:PUSHJ P,DISDEC
2303: MOVEI TEM,"."
2304: JRST DISTYO
2305:
2306: ↑DISDEC:
2307: JUMPGE TAC,DISDC1
2308: MOVEI TEM,"-"
2309: PUSHJ P,DISTYO
2310: DISDC1: MOVM TAC,TAC
2311:
2312: DISNUM: IDIVI TAC,=10
2313: HRLM TAC1,(P)
2314: JUMPE TAC,.+2
2315: PUSHJ P,DISNUM
2316: HLRZ TAC,(P)
2317: MOVEI TEM,"0"(TAC)
2318: JRST DISTYO
COMCSS page# 0058 next prev
2320:
2321:
2322:
2323:
2324:
2325: ↑DISSIX:
2326: JUMPE TAC1,CPOPJ
2327: SETZM TAC
2328: ROTC TAC,6
2329: MOVEI TEM,"A"-'A'(TAC)
2330: PUSH P,TAC1
2331: PUSHJ P,DISTYO
2332: POP P,TAC1
2333: JRST DISSIX
COMCSS page# 0059 next prev
2335:
2336:
2337: ↑DISINIT:
2338: MOVE TAC,[POINT 7,DISBUF]
2339: MOVEM TAC,DISPTR
2340: MOVEM TAC,DISOPT
2341: SETZM DISFLAG
2342: MOVEI TAC,5*DISLEN
2343: MOVEM TAC,DISCTR
2344: POPJ P,
COMCSS page# 0060 next prev
2346:
2347:
2348:
2349:
2350:
2351:
2352: ↑CTYTYO:
2353: CONSZ CTY,40
2354: JRST CTYTY2
2355: CTYTY3:
2356: MOVEI TAC,777777
2357: CONSZ CTY,20
2358: SOJG TAC,.-1
2359: DATAO CTY,TEM
2360: CAIE TEM,11
2361: POPJ P,
2362: MOVEI TEM,4
2363: TABWAT:
2364: MOVEI TAC,777777
2365: CONSZ CTY,20
2366: SOJG TAC,.-1
2367: DATAO CTY,[1]
2368: SOJG TEM,TABWAT
2369: POPJ P,
2370:
2371: CTYTY2: DATAI CTY,TAC
2372: CAIE TAC,"O"-100
2373: JRST CTYTY3
2374: CONSO APR,MAOFF
2375: POPJ P,
2376: PUSH P,DAT
2377: SKIPN DAT,TTYTAB+TCONLN
2378: JRST .+3
2379: ADDI DAT,TTOBUF
2380: PUSHJ P,SETBFO
2381: POP P,DAT
2382: JRST DISINI
COMCSS page# 0061 next prev
2384:
2385:
2386: ↑DISDATE:
2387: MOVEI TEM,1
2388: PUSHJ P,DISTYO
2389: MOVE TAC,THSDAT
2390: IDIVI TAC,=31
2391: EXCH TAC,TAC1
2392: ADDI TAC,1
2393: PUSH P,TAC1
2394: PUSHJ P,DISDEC
2395: POP P,TAC1
2396: SETZ TAC,
2397: DIVI TAC,=12
2398: EXCH TAC,TAC1
2399: PUSH P,TAC1
2400: MOVE TAC,MONTAB(TAC)
2401: DPB TAC,[POINT 21,DISMON,27]
2402: MOVE AC1,[POINT 7,DISMON]
2403: MOVEI AC2,5
2404: DISDA1: ILDB TEM,AC1
2405: PUSH P,AC1
2406: PUSH P,AC2
2407: PUSHJ P,DISTYO
2408: POP P,AC2
2409: POP P,AC1
2410: SOJG AC2,DISDA1
2411: POP P,TAC1
2412: MOVEI TAC,=64(TAC1)
2413: PUSHJ P,DISDEC
2414: MOVEI TEM," "
2415: PUSHJ P,DISTYO
2416: MOVE TAC,TIME
2417: IDIVI TAC,JIFMIN
2418: IDIVI TAC,=60
2419: IMULI TAC,=100
2420: ADD TAC,TAC1
2421: PUSHJ P,DISDEC
2422: PUSHJ P,DISMES
2423: ASCIZ /
2424: /
2425: POPJ P,
COMCSS page# 0062 next prev
2427: SUBTTL IOCSS 4 AUG 67
2428:
2429:
2430:
2431:
2432:
2433:
2434:
2435:
2436:
2437:
2438:
2439:
2440:
2441:
2442:
2443:
2444:
2445: ↑ADVBFE:
2446: AOS NABFE
2447: PUSH P,AC3
2448: JSP AC3,PRSET
2449: SKIPN TAC1,DEVOAD(DDB)
2450: JRST ADVXIT
2451: JSP AC3,ADRCK
2452: XCTR XW,[MOVEM IOS,-1(TAC1)]
2453: MOVSI TAC,IOUSE
2454: XCTR XRW,[ANDCAB TAC,(TAC1)]
2455: TRNE IOS,740000
2456: JRST ADVXIT
2457: MOVE TAC1,TAC
2458: JSP AC3,ADRCK
2459: HRRM TAC1,DEVOAD(DDB)
2460: JRST ADVBE2
2461:
2462:
2463:
2464: ↑ADVBE1:
2465: PUSH P,AC3
2466: JSP AC3,PRSET
2467: ADVBE2: SKIPN TAC1,DEVOAD(DDB)
2468: JRST ADVXIT
2469: XCTR XR,[SKIPL (TAC1)]
2470: JRST ADVXIT
2471: JRST ADVBF1
COMCSS page# 0063 next prev
2473:
2474:
2475:
2476:
2477:
2478: PRSET:
2479: IFN FTXCTR,<PUSH P,160
2480: PUSH P,@161>
2481: PUSH P,AC2
2482: PUSH P,AC1
2483: PUSH P,J
2484: PUSH P,TEM
2485: PUSH P,LASTPR(PID)
2486: LDB J,PJOBN
2487: PUSHJ P,GETPR
2488: MOVEM TAC,LASTPR(PID)
2489: DATAO APR,TAC
2490: MOVEI TEM,JOBPFI
2491: HLRZ AC1,PROG
2492: LDB AC2,PSEGN
2493: JUMPE AC2,(AC3)
2494: HLRZ AC2,JBTADR(AC2)
2495: ADDI AC2,400000
2496: JRST (AC3)
COMCSS page# 0064 next prev
2498:
2499:
2500:
2501:
2502:
2503:
2504:
2505:
2506: ADRCK: CAILE TEM,(TAC1)
2507: JRST ADVXIT
2508: CAIL AC1,(TAC1)
2509: JRST (AC3)
2510: TRNE TAC1,400000
2511: CAIGE AC1,(TAC1)
2512: JRST ADVXIT
2513: JRST (AC3)
2514:
2515: ADVXIT: POP P,LASTPR(PID)
2516: DATAO APR,LASTPR(PID)
2517: POP P,TEM
2518: POP P,J
2519: POP P,AC1
2520: POP P,AC2
2521: IFN FTXCTR,<POP P,@161
2522: POP P,160>
2523: POP P,AC3
2524: POPJ P,
COMCSS page# 0065 next prev
2526:
2527:
2528:
2529:
2530:
2531:
2532:
2533:
2534:
2535:
2536:
2537:
2538:
2539:
2540:
2541:
2542: ↑ADVBFF:
2543: AOS NABFF
2544: PUSH P,AC3
2545: JSP AC3,PRSET
2546: SKIPN TAC1,DEVIAD(DDB)
2547: JRST ADVXIT
2548: JSP AC3,ADRCK
2549: XCTR XW,[MOVEM IOS,-1(TAC1)]
2550: MOVSI TAC,IOUSE
2551: XCTR XRW,[IORB TAC,(TAC1)]
2552: MOVE TAC1,TAC
2553: JSP AC3,ADRCK
2554: HRRM TAC1,DEVIAD(DDB)
2555: XCTR XR,[SKIPGE TAC1,(TAC1)]
2556: JRST ADVXIT
2557: HLRZS TAC1
2558: ADD TAC1,TAC
2559: JSP AC3,ADRCK
2560: ADVBF1: SKIPGE TAC,JBTSTS(J)
2561: TLNE TAC,SHF!SWP!CMWB
2562: JRST ADVXIT
2563: TRNN IOS,IOCON+740000
2564: IFE FTXCTR,< AOS -6(P)>
2565: IFN FTXCTR,< AOS -10(P)>
2566: JRST ADVXIT
COMCSS page# 0066 next prev
2568:
2569:
2570:
2571:
2572:
2573:
2574:
2575:
2576: ↑UUOACK:HRRZ AC1,UUO
2577:
2578: ↑UADCK1:
2579: TRNN AC1,777760
2580: POPJ PDP,
COMCSS page# 0067 next prev
2582:
2583:
2584:
2585:
2586:
2587:
2588:
2589:
2590: ↑UADRCK: MOVE J,JOB(PID)
2591: CAILE AC1,JOBPFI
2592: JRST UADCK2
2593: PUSH P,AC1
2594: MOVE AC1,UUOPC(ITEM)
2595: TLNE AC1,USRMOD
2596: JRST UADRER
2597: POP P,AC1
2598: POPJ P,
2599: UADCK2: CAMG AC1,USRREL(PID)
2600: POPJ PDP,
2601: TRNN AC1,400000
2602: JRST UADRER
2603: PUSH P,AC2
2604: LDB AC2,PSEGN
2605: JUMPE AC2,UADRER
2606: HLRZ AC2,JBTADR(AC2)
2607: CAILE AC1,400000(AC2)
2608: JRST UADRER
2609: POP P,AC2
2610: POPJ P,
COMCSS page# 0068 next prev
2612:
2613:
2614:
2615:
2616:
2617:
2618:
2619:
2620: ↑IADRCK:
2621: MOVS TAC1,PROG
2622: CAILE TAC,JOBPFI
2623: CAILE TAC,(TAC1)
2624: POPJ PDP,
2625: JRST CPOPJ1
COMCSS page# 0069 next prev
2627:
2628:
2629:
2630:
2631:
2632:
2633:
2634:
2635:
2636:
2637:
2638:
2639:
2640:
2641:
2642:
2643:
2644: ↑COMCHK:
2645: PUSH PDP,UUO
2646: PUSH PDP,AC2
2647: PUSH PDP,AC3
2648: MOVEI AC1,JOBPFI
2649: MOVE AC2,UUOPC(ITEM)
2650: TLNN AC2,USRMOD
2651: MOVEI AC1,JOBSAV
2652: SETZB DAT,AC2
2653: MOVEI ITEM,100
2654: JRST COMCK1
2655: COMCK0: HRR UUO,TAC1
2656: CAIE AC1,JOBPFI
2657: JRST COMCK1
2658: HRRZ TAC,UUO
2659: PUSHJ PDP,IADRCK
2660: JRST COMCKE
COMCSS page# 0070 next prev
2662: COMCK1: SOJLE ITEM,COMCKE
2663: SKIPN TAC1,@UUO
2664: JRST COMCK2
2665: TLNN TAC1,777777
2666: JRST COMCK0
2667: HLRO AC3,TAC1
2668: HRRZS TAC1
2669: CAMGE TAC1,AC1
2670:
2671: JRST COMCKE
2672: SUB TAC1,AC3
2673: CAMLE TAC1,USRREL(PID)
2674: JRST COMCKE
2675: SUB DAT,AC3
2676: SKIPN AC2
2677: MOVE AC2,UUO
2678: AOJA UUO,COMCK1
2679:
2680: COMCK2: SKIPE AC2
2681: MOVE UUO,AC2
2682:
2683: POP PDP,AC3
2684: POP PDP,AC2
2685: JRST TPOPJ1
2686: COMCKE: POP PDP,AC3
2687: POP PDP,AC2
2688: POP PDP,UUO
2689: POPJ PDP,
COMCSS page# 0071 next prev
2691:
2692:
2693:
2694:
2695:
2696:
2697:
2698:
2699:
2700: ↑ASSASG:
2701: MOVE TAC,JBTPRV(J)
2702: TLNE TAC,LUPPRV
2703: JRST ASSAS3
2704: MOVE TAC,DEVCMR(DDB)
2705: TLNE TAC,DEVLUP
2706: POPJ P,
2707: ASSAS3: MOVE TAC,DEVCMR(DDB)
2708: TLNN TAC,DEVSHR
2709: JRST ASSAS2
2710: HRRZ TAC,DEVSER(DDB)
2711: PUSHJ P,DGETDD(TAC)
2712: JRST ASSAS0
2713:
2714: ASSAS2: LDB TAC,PJOBN
2715: CAIE TAC,(J)
2716: JRST ASSAS1
2717:
2718:
2719:
2720: JRST ASSAS0
2721: POPJ P,
2722:
2723: ASSAS1: MOVE TAC,[TTYATC,,ASSCON!ASSPRG]
2724: CONO PI,SCNOFF
2725: TDNE TAC,DEVMOD(DDB)
2726: JRST SCNONJ
2727: ASSAS0: DPB J,PJOBN
2728: IORM TAC1,DEVMOD(DDB)
2729: MOVSI TAC,DVTTY
2730: TDNE TAC,DEVMOD(DDB)
2731: JRST ASSAST
2732: ASSASZ: CONO PI,SCNON
2733: JRST CPOPJ1
2734:
2735: ASSAST: PUSH P,AC1
2736: LDB TAC,PUNIT
2737: SKIPGE TTYTAB(TAC)
2738: SOS COMCNT
2739: MOVSI AC1,COMBIT+DLYBIT
2740: ANDCAM AC1,TTYTAB(TAC)
2741: POP P,AC1
2742: JRST ASSASZ
COMCSS page# 0072 next prev
2744:
2745:
2746:
2747:
2748:
2749:
2750:
2751:
2752: ↑FNDDDB:TLNE TAC,770000
2753: JRST DEVSRC
2754: CAMG TAC,USRHCU(PID)
2755: SKIPN DDB,USRJDA(TAC)
2756: POPJ P,
2757: JRST CPOPJ1
2758:
2759: ↑DEVSRC:
2760: MOVSI DEVDAT,JLOG
2761: TDNE DEVDAT,JBTSTS(J)
2762:
2763:
2764: PUSHJ PDP, DEVLG
2765: JRST DEVPHY
2766: JRST CPOPJ1
2767:
2768:
2769:
2770: ↑DEVLG: HLRZ DEVDAT,DEVLST
2771: DEVLP0: CAME TAC,DEVLOG(DEVDAT)
2772: JRST DEV0
2773: LDB TAC1,PJOBN
2774: CAMN TAC1,ITEM
2775: JUMPN TAC,CPOPJ1
2776: DEV0: HLRZ DEVDAT,DEVSER(DEVDAT)
2777:
2778: JUMPN DEVDAT,DEVLP0
2779: POPJ PDP,
COMCSS page# 0073 next prev
2781:
2782:
2783: ↑DEVPHY:
2784: CAMN TAC,[SIXBIT /OPR/]
2785: MOVE TAC,DEVOPR
2786: CAMN TAC,[SIXBIT /SYS/]
2787: SKIPA TAC,SYSTAP
2788: TDZA TAC1,TAC1
2789: MOVEI TAC1,SYSDEV
2790: HLRZ DEVDAT,DEVLST
2791: DEVLP1:
2792: TLO DEVDAT,(TAC1)
2793: CAMN TAC,DEVNAM(DEVDAT)
2794: JUMPN TAC,CPOPJ1
2795: DEVLP2: HLRZ DEVDAT,DEVSER(DEVDAT)
2796: JUMPN DEVDAT,DEVLP1
2797: CAME TAC,[SIXBIT /TTY/]
2798: JRST DEVLP3
2799: PUSH PDP,DAT
2800: PUSHJ PDP,TTYFND
2801: POP PDP,DAT
2802: JRST CPOPJ1
2803: DEVLP3: PUSH P,TAC
2804: PUSH P,DAT
2805: PUSHJ P,GETDDB
2806: CAIA
2807: AOS -2(P)
2808: POP P,DAT
2809: POP P,TAC
2810: POPJ P,
COMCSS page# 0074 next prev
2812:
2813:
2814:
2815:
2816:
2817:
2818:
2819:
2820:
2821:
2822:
2823:
2824:
2825:
2826:
2827:
2828:
2829:
2830:
2831:
2832:
2833:
2834:
2835: BUFWRD←←AC3
2836:
2837: ↑BUFCLC:
2838: LDB TAC,PDVBLN
2839:
2840: BUFCLM: PUSH PDP,BUFWRD
2841: HRRZ BUFPNT,JOBFF(PROG)
2842: ADDI BUFPNT,1
2843: HRRZ BUFWRD,BUFPNT
2844: HRL BUFWRD,TAC
2845: ADDI TAC,2
2846: HRRZ TAC1,UUO
2847: JUMPG TAC1,.+2
2848: MOVEI TAC1,2
2849: HRRZ AC1,TAC
2850: IMUL AC1,TAC1
2851: ADD AC1,BUFWRD
2852: HRRZ AC1,AC1
2853: CAMG AC1,USRREL(PID)
2854: JRST BUFC1
COMCSS page# 0075 next prev
2856:
2857:
2858: PUSH PDP,TAC
2859: PUSH PDP,UUO
2860: PUSH PDP,TAC1
2861: PUSH PDP,BUFPNT
2862: PUSH PDP,BUFWRD
2863: PUSH PDP,DEVDAT
2864: PUSH PDP,DSER
2865: MOVE ITEM,JOB(PID)
2866: MOVE TAC,AC1
2867: MOVEI UUO,UUO
2868: PUSHJ PDP,UCORE
2869: JFCL
2870: POP PDP,DSER
2871: POP PDP,DEVDAT
2872: POP PDP,BUFWRD
2873: POP PDP,BUFPNT
2874: POP PDP,TAC1
2875: POP PDP,UUO
2876: POP PDP,TAC
2877:
COMCSS page# 0076 next prev
2879:
2880:
2881: BUFC1: ADD BUFWRD,TAC
2882: HRRZ AC1,BUFPNT
2883: PUSHJ P,UADRCK
2884: XCTR XW,[MOVEM BUFWRD,(BUFPNT)]
2885: HRR BUFPNT,BUFWRD
2886: SOJG TAC1,BUFC1
2887: HRR BUFWRD,JOBFF(PROG)
2888: ADDI BUFWRD,1
2889: MOVEI AC1,-2(BUFPNT)
2890: PUSHJ P,UADRCK
2891: SUB BUFPNT,TAC
2892: XCTR XW,[MOVEM BUFWRD,(BUFPNT)]
2893: ADDI BUFPNT,-1(TAC)
2894: HRRM BUFPNT,JOBFF(PROG)
2895: HRR BUFPNT,BUFWRD
2896: HRLI BUFPNT,IOUSE
2897: POP P,BUFWRD
2898: POPJ P,
COMCSS page# 0077 next prev
2900:
2901:
2902:
2903:
2904:
2905:
2906:
2907:
2908:
2909:
2910:
2911:
2912: ↑BUFCLR:
2913: PUSHJ PDP,IADRCK
2914: POPJ PDP,
2915: HRLI TAC,PROG
2916: PUSH PDP,TAC
2917: HLRZ TAC1,@TAC
2918: TRZ TAC1,400000
2919: ADD TAC,TAC1
2920: TLZ TAC,-1
2921: PUSHJ PDP,IADRCK
2922: JRST TPOPJ
2923: HRLI TAC,PROG
2924: POP PDP,TAC1
2925: NOSHUFF
2926: MOVEI TAC1,@TAC1
2927: HRL TAC1,TAC1
2928: AOBJN TAC1,.+1
2929: SETZM (TAC1)
2930: AOS TAC1
2931: BLT TAC1,@TAC
2932: SHUFFLE
2933: JRST CPOPJ1
COMCSS page# 0078 next prev
2935:
2936:
2937:
2938:
2939:
2940:
2941:
2942:
2943:
2944:
2945:
2946:
2947:
2948: ↑CKS12: ADD TAC1,PROG
2949: AOS TAC1
2950: HRRZ TAC,0(TAC1)
2951: MOVNS TAC
2952: AOS TAC1
2953: HRL TAC1,TAC
2954: SETZM TAC
2955: CKS12A: ADD TAC,0(TAC1)
2956: AOBJN TAC1,CKS12A
2957: LSHC TAC,-30
2958: LSH TAC1,-14
2959: ADD TAC,TAC1
2960: LSHC TAC,-14
2961: LSH TAC1,-30
2962: ADD TAC,TAC1
2963: TRZE TAC,770000
2964: AOS TAC
2965: HRLZS TAC
2966: MOVEI TAC1,1
2967: POPJ PDP,
COMCSS page# 0079 next prev
2969:
2970:
2971:
2972:
2973:
2974:
2975:
2976:
2977: ↑CLRBYT:
2978: LDB TAC1,[POINT 6,TAC,5]
2979: DPB TAC1,[POINT 12,TAC,11]
2980: SETZM TAC1
2981: DPB TAC1,TAC
2982: POPJ PDP,
COMCSS page# 0080 next prev
2984:
2985:
2986: ↑IOWAIT: SKIPA TAC,[WAIT1]
2987: ↑IORELS: MOVEI TAC,RELEA3
2988:
2989:
2990:
2991:
2992:
2993: ↑IOALL: PUSH PDP,TAC
2994: SETZB UCHN,UUO
2995: SKIPL DEVDAT,USRHCU(PID)
2996: JRST IOALL1
2997: SETZM USRHCU(PID)
2998: JRST IOALL2
2999: IOALL1: CAMLE UCHN,USRHCU(PID)
3000: JRST IOALLP
3001: SKIPN DEVDAT,USRJDA(UCHN)
3002: AOJA UCHN,IOALL1
3003: IOALL2: MOVE IOS,DEVIOS(DEVDAT)
3004: DPB UCHN,PUUOAC
3005: MOVE DSER,DEVSER(DEVDAT)
3006: LDB J,PJOBN
3007: CAMN J,JOB(PID)
3008: PUSHJ PDP,@(PDP)
3009: MOVE J,JOB(PID)
3010: AOJA UCHN,IOALL1
3011:
3012: IOALLP: SKIPL UCHN,JBTIOP(J)
3013: JRST TPOPJ
3014: PUSH P,[-1]
3015: IOALP1: SKIPN DDB,(UCHN)
3016: JRST IOALP2
3017: EXCH DDB,USRJDA
3018: MOVEM DDB,(UCHN)
3019: MOVE DDB,USRJDA
3020: PUSH P,UCHN
3021: SETZ UCHN,
3022: MOVE IOS,DEVIOS(DDB)
3023: DPB UCHN,PUUOAC
3024: MOVE DSER,DEVSER(DDB)
3025: LDB J,PJOBN
3026: CAMN J,JOB(PID)
3027: PUSHJ P,@-2(P)
3028: MOVE J,JOB(PID)
3029: POP P,UCHN
3030: MOVE DDB,(UCHN)
3031: EXCH DDB,USRJDA
3032: MOVEM DDB,(UCHN)
3033: JUMPE DDB,IOALP2
3034: SETZM (P)
3035: IOALP2: ADD UCHN,[1,,1]
3036: AOBJN UCHN,IOALP1
3037: POP P,TAC
3038: JUMPE TAC,TPOPJ
3039: PUSH P,AC1
3040: HRRZ AC1,JBTIOP(J)
3041: SETZM JBTIOP(J)
3042: PUSHJ P,FSGIVE
3043: POP P,AC1
3044: JRST TPOPJ
3045:
3046:
3047:
3048:
3049:
3050:
3051: IOALLR: PUSH P,USRJDA
3052: MOVEI DDB,DEVLST-DEVSER
3053: IOALR1: HLRZ DDB,DEVSER(DDB)
3054: JUMPE DDB,IOALR3
3055: IOALR2: LDB J,PJOBN
3056: CAME J,JOB(PID)
3057: JRST IOALR1
3058: MOVE UCHN,DEVMOD(DDB)
3059: TRNN UCHN,ASSPRG
3060: JRST IOALR1
3061: MOVEM DDB,USRJDA
3062: MOVEI UCHN,0
3063: DPB UCHN,PUUOAC
3064: MOVE IOS,DEVIOS(DDB)
3065: MOVE DSER,DEVSER(DDB)
3066: PUSH P,DSER
3067: PUSHJ P,RELEA5
3068: POP P,DDB
3069: HLRZ DDB,DDB
3070: JUMPN DDB,IOALR2
3071: IOALR3: POP P,USRJDA
3072: MOVE J,JOB(PID)
3073: POPJ P,
COMCSS page# 0081 next prev
3075:
3076:
3077:
3078:
3079: ↑IOKILL:
3080: MOVEI TAC,RELEA5
3081: PUSHJ P,IOALL
3082: PUSHJ P,IOALLR
3083:
3084:
3085:
3086:
3087: HLRZ TAC,JOBSA(JDAT)
3088: MOVEM TAC,JOBFF(JDAT)
3089: ↑CLRUSR:
3090: SETZM JOBENB(JDAT)
3091: MOVEI TAC,USRLO1(PID)
3092: HRLI TAC,USRLO(PID)
3093: SETZM USRLO(PID)
3094: BLT TAC,USRHI(PID)
3095: SETZM USRHCU(PID)
3096: POPJ P,
3097:
COMCSS page# 0082 next prev
3099:
3100:
3101:
3102:
3103:
3104:
3105:
3106:
3107: ↑ORACT: SKIPE SPWUUF(PID)
3108: CONSZ PI,77000
3109: CAIA
3110: JRST SPWERR
3111: TRO IOS,IOACT
3112: IORB IOS,DEVIOS(DDB)
3113: JRST ORACT1
3114: ↑SETACT:
3115: SKIPE SPWUUF(PID)
3116: CONSZ PI,77000
3117: CAIA
3118: JRST SPWERR
3119: TROE IOS,IOACT
3120: JRST STOIOS
3121: TLZA IOS,IOW
3122: ↑CLRACT:
3123: TRZ IOS,IOACT
3124: ↑STOIOS:
3125: MOVEM IOS,DEVIOS(DDB)
3126: ORACT1: LDB TAC,PDVTIM
3127: DPB TAC,PDVCNT
3128: POPJ P,
COMCSS page# 0083 next prev
3130:
3131:
3132:
3133: ↑DEVCHK:
3134: MOVEI TAC,JIFSEC
3135: MOVEM TAC,HNGTIM
3136:
3137: SOSN DSKHNG
3138: PUSHJ P,DSKDSP+DHNG
3139: MOVEI DDB,PTRDDB
3140: DEVCK0: MOVE IOS,DEVIOS(DEVDAT)
3141: TRNN IOS,IOACT
3142: JRST DEVCK2
3143: DEVCK3: LDB TAC,PDVCNT
3144: SOJL TAC,DEVCK1
3145: DPB TAC,PDVCNT
3146: JUMPN TAC,DEVCK1
3147: MOVE DSER,DEVSER(DEVDAT)
3148: PUSH PDP,DEVDAT
3149: PUSHJ PDP,DHNG(DSER)
3150:
3151: PUSHJ PDP,DEVHNG
3152: POP PDP,DEVDAT
3153: DEVCK1: HLRZ DEVDAT,DEVSER(DEVDAT)
3154: CAIE DEVDAT,TTYLST
3155: JUMPN DEVDAT,DEVCK0
3156: POPJ PDP,
3157:
3158: DEVCK2: MOVE DAT,DEVCMR(DEVDAT)
3159: TLNE DAT,DEVIBF
3160: TLNN IOS,DEVSBB
3161: JRST DEVCK1
3162: JRST DEVCK3
COMCSS page# 0084 next prev
3164:
3165:
3166:
3167:
3168:
3169:
3170: ↑DEVCR: HLR TAC,DEVBUF(DEVDAT)
3171: HRLI TAC,PROG
3172: HRR TAC,@TAC
3173: SKIPL @TAC
3174: AOS (PDP)
3175: POPJ PDP,
COMCSS page# 0085 next prev
3177:
3178:
3179:
3180:
3181:
3182: ↑DEVSTU:
3183: SKIPL @DEVOAD(DEVDAT)
3184: POPJ PDP,
3185: MOVEI AC3,@DEVOAD(DEVDAT)
3186: HRRZ AC2,1(AC3)
3187: ADD AC3,[POINT 7,2]
3188: AOS (PDP)
3189: POPJ PDP,
COMCSS page# 0086 next prev
3191:
3192:
3193:
3194:
3195:
3196:
3197:
3198:
3199:
3200:
3201:
3202: ↑IOSET: LDB PROG,PJOBN
3203: MOVE ITEM,DEVCTR(DEVDAT)
3204: MOVE PROG,JBTADR(PROG)
3205: POPJ PDP,
COMCSS page# 0087 next prev
3207:
3208:
3209:
3210:
3211:
3212:
3213:
3214:
3215:
3216:
3217:
3218:
3219:
3220: ↑IOSETC:
3221: ADDI JBUF,1
3222: MOVSI TAC,7777
3223: XCTR XRW,[ANDM TAC,(JBUF)]
3224: XCTR XRW,[HRRM TAC1,(JBUF)]
3225: XCTR XRW,[AOS (JBUF)]
3226:
3227: XCTR XLB,[LDB TAC1,[POINT 17,(TAC1),17]]
3228: CAILE ITEM,-1(TAC1)
3229: MOVEI ITEM,-1(TAC1)
3230: XCTR XLB,[LDB TAC1,[POINT 6,(JBUF),11]]
3231: PUSHJ P,ITMCT1
3232: ADDI JBUF,1
3233: XCTR XW,[MOVEM ITEM,(JBUF)]
3234: POPJ P,
COMCSS page# 0088 next prev
3236:
3237:
3238:
3239:
3240:
3241:
3242:
3243:
3244:
3245:
3246:
3247:
3248:
3249:
3250:
3251: ↑ITMSET:
3252: LDB ITEM,[POINT 17,@DEVADR(DEVDAT),17]
3253: SUBI ITEM,1
3254: LDB TAC1,[POINT 6,DEVPTR(DEVDAT),11]
3255: ↑ITMCT1:
3256: MOVEI TAC,44
3257: IDIV TAC,TAC1
3258: IMUL ITEM,TAC
3259: POPJ PDP,
COMCSS page# 0089 next prev
3261:
3262:
3263:
3264:
3265: ↑SETIOS:
3266: PUSHJ PDP,WAIT1
3267: PUSHJ P,SETMOD
3268: JRST ILLMOD
3269: POPJ P,
3270:
3271: ↑SETMOD:
3272: LDB TAC1,[POINT 4,UUO,35]
3273: SETIO2: MOVEI TAC,1
3274: LSH TAC,(TAC1)
3275: TDNN TAC,DEVMOD(DEVDAT)
3276: JRST SETIO1
3277: TRZ UUO,IOACT
3278: HRRM UUO,DEVIOS(DEVDAT)
3279: JRST CPOPJ1
3280:
3281: SETIO1: CAIE TAC1,2
3282: POPJ P,
3283: MOVEI TAC1,D
3284: ADDI UUO,D-2
3285: JRST SETIO2
COMCSS page# 0090 next prev
3287:
3288:
3289:
3290:
3291:
3292:
3293:
3294:
3295:
3296:
3297: NEWBUF: HRRZ TAC,DEVADR(DEVDAT)
3298: PUSHJ PDP,BUFCLR
3299: POPJ PDP,
3300: HRR TAC,DEVADR(DEVDAT)
3301: HRLZI TAC,7737
3302: AND TAC,DEVPTR(DEVDAT)
3303: HRR TAC,DEVADR(DEVDAT)
3304: AOS TAC
3305: MOVEM TAC,DEVPTR(DEVDAT)
3306: PUSHJ PDP,ITMSET
3307: MOVEM ITEM,DEVCTR(DEVDAT)
3308: JRST CPOPJ1
COMCSS page# 0091 next prev
3310:
3311:
3312:
3313:
3314:
3315:
3316:
3317:
3318:
3319:
3320:
3321:
3322:
3323:
3324:
3325:
3326:
3327: ↑SETBYT:
3328: TRNN IOS,14
3329: HRLI TAC,700+PROG
3330: TRNE IOS,14
3331: HRLI TAC,4400+PROG
3332: POPJ PDP,
COMCSS page# 0092 next prev
3334:
3335:
3336:
3337:
3338:
3339:
3340:
3341:
3342:
3343:
3344:
3345:
3346:
3347:
3348:
3349:
3350:
3351:
3352:
3353:
3354:
3355:
3356:
3357:
3358:
3359:
COMCSS page# 0093 next prev
3361: ↑STODAT:
3362: TLNN IOS,IOFST
3363: JRST STO0
3364: PUSHJ PDP,NEWBUF
3365:
3366: POPJ PDP,
3367: STO0: LDB TAC1,PIOMOD
3368: CAIN TAC1,B
3369: JRST STOBIN
3370: TLZ IOS,IOFST
3371: STO1: IDPB DAT,DEVPTR(DEVDAT)
3372: CAIE TAC1,A
3373: CAIN TAC1,I
3374: JRST STOAIB
3375: CAIE TAC1,IB
3376: CAIN TAC1,B
3377: JRST STOAIB
3378: ANDI DAT,177
3379: CAIG DAT,14
3380: CAIGE DAT,12
3381: JRST .+2
3382: JRST STOSQF
3383: SOJGE ITEM,CPOPJ2
3384: STOE1: TRO IOS,IOBKTL
3385: POPJ PDP,
3386: STOAIB: SOJG ITEM,CPOPJ2
3387: CAIN TAC1,A
3388: JRST STOSQF
3389: CAIN TAC1,B
3390: JRST STOBND
3391: PUSHJ PDP,ITMSET
3392:
3393: SUB ITEM,DEVCTR(DEVDAT)
3394: MOVE TAC1,DEVIAD(DEVDAT)
3395: ADDI ITEM,1
3396: AOJA TAC1,STOSQE
COMCSS page# 0094 next prev
3398: ↑STOSQD:
3399: TLZN IOS,IOFST
3400: JRST STOSQF
3401: PUSHJ PDP,NEWBUF
3402: POPJ PDP,
3403: STOSQF: MOVE TAC1,DEVIAD(DEVDAT)
3404: AOS TAC1
3405: HRRZ ITEM,DEVPTR(DEVDAT)
3406:
3407: SUBI ITEM,(TAC1)
3408: STOSQE: HRRM ITEM,@TAC1
3409: JRST CPOPJ1
3410:
3411:
3412: STOBIN: TLZN IOS,IOFST
3413: JRST STO1
3414: HRRZ TAC,DAT
3415: CAMLE TAC,ITEM
3416: JRST STOE1
3417: MOVE ITEM,TAC
3418: MOVEM DAT,@DEVPTR(DEVDAT)
3419: JRST CPOPJ2
3420:
3421: STOBND: HRRZ TAC1,DEVIAD(DEVDAT)
3422: PUSHJ PDP,CKS12
3423: ADD TAC1, DEVIAD(DEVDAT)
3424: HLLZ TAC1,@TAC1
3425: CAMN TAC,TAC1
3426: JRST CPOPJ1
3427: TRO IOS,IODTER
3428: JRST CPOPJ
3429:
3430:
COMCSS page# 0095 next prev
3432: SUBTTL RUNCSS 4 AUG 67 - KSTOP
3433:
3434:
3435:
3436:
3437:
3438:
3439:
3440:
3441:
3442:
3443:
3444:
3445:
3446:
3447:
3448:
3449:
3450:
3451:
3452: ↑KSTOP: MOVSI TAC,JNA!JLOG!JACCT
3453: ANDCAM TAC,JBTSTS(J)
3454: SKIPN JBTADR(J)
3455: JRST KSTOP1
3456: PUSHACS
3457: PUSHJ P,DISMES
3458: ASCIZ /JBTADR NOT ZERO AT KSTOP. CALL A DOCTOR DOUBLE QUICK. /
3459: PUSHJ P,DISJOB
3460: PUSHJ P,DISCRLF
3461: PUSHJ P,DISFLU
3462: PUSHJ P,DDTCALL
3463: POPACS
3464: KSTOP1:
3465:
3466:
3467: MOVNI TAC,NULQ
3468: MOVEM TAC,JOBQUE(J)
3469: PUSHJ P,REQUE
3470: PUSHJ P,FLUSIN
3471: IFN FTLOGIN,<
3472: SETZM PRJPRG(J)
3473: >
3474: SETZM JOBNAM(J)
3475: SETZM TTIME(J)
3476: SETZM JBTBTM(J)
3477: SETZM JBTGSL(J)
3478: SETOM JBTWKM(J)
3479: JRST ESTOP2
COMCSS page# 0096 next prev
3481:
3482:
3483:
3484:
3485:
3486: ↑PHOLD: PUSHJ P,CONMES
3487:
3488:
3489:
3490:
3491:
3492:
3493: ↑HOLD: PUSHJ P,PRCRCC
3494: PUSHJ P,TTYSTC
3495:
3496:
COMCSS page# 0097 next prev
3498:
3499:
3500: MSTOP:
3501: ↑ESTOP:
3502: JUMPE J,CPOPJ
3503: SKIPE SPWUUF(PID)
3504: CONSZ PI,77000
3505: CAIA
3506: JRST SPWERR
3507: MOVSI TAC,JACCT
3508: ANDCAM TAC,JBTSTS(J)
3509: MOVSI TAC,JLOG
3510: TDNE TAC,JBTSTS(J)
3511: JRST ESTOP4
3512: SKIPN PROG,JBTADR(J)
3513: JRST ESTOP4
3514: CONSZ PI,77400
3515: JRST ESTP3B
3516: SKIPN INTACT(PID)
3517: JRST ESTP3A
3518: ESTP3C: PUSHJ P,ESTOP3
3519: SETOM ESTINT
3520: JRST WSCHD2
3521:
3522: ESTP3B: CAMN J,JOB(PID)
3523: SKIPN INTACT(PID)
3524: JRST ESTOP3
3525: JRST ESTP3C
3526:
3527: ESTP3A: PUSHJ P,JOBKL1
3528: PUSHACS
3529: PUSHJ P,DISMES
3530: ASCIZ /RETURNED FROM JOBKL1 AT ESTOP
3531: /
3532: POPACS
3533: JRST ESTOP4
3534:
3535: ESTOP3: IORM TAC,JBTSTS(J)
3536: MOVE TAC,['-DIE!-']
3537: MOVEM TAC,JOBNAM(J)
3538: PUSHJ P,INTKIL
3539: JSP TAC1,MONJOB
3540: JRST JOBKL
3541:
3542:
3543: ↑ESTOP2:
3544: JUMPE J,CPOPJ
3545: SKIPE SPWUUF(PID)
3546: CONSZ PI,77000
3547: CAIA
3548: JRST SPWERR
3549: MOVSI TAC,JACCT
3550: ANDCAM TAC,JBTSTS(J)
3551: ESTOP4: MOVSI TAC,JERR
3552: IORB TAC,JBTSTS(J)
3553: TRNE TAC,JLOCK
3554: JRST [MOVSI TAC,UNLOKC
3555: HRR TAC,J
3556: CONO PI,PIOFF
3557: IDPB TAC,CLKQ
3558: CONO PI,PION
3559: JRST .+1]
3560: PUSHJ P,INTKILL
3561: CAME J,STUSER
3562: JRST ESTOP6
3563: MOVSI TAC,'SYS'
3564: PUSHJ P,DEVSRC
3565: JRST ESTOP5
3566: PUSHJ P,RELEA9
3567: JRST ESTOP6
3568:
3569: ESTOP5: PUSHACS
3570: PUSHJ P,DISDATE
3571: PUSHJ P,DISMES
3572: ASCIZ /ππNO DEVICE SYS AT ESTOP!
3573: /
3574: POPACS
3575: ESTOP6: CAMN J,JOB(PID)
3576: CONSZ PI,77400
3577: JRST STOP1
3578: SKIPE INTACT(PID)
3579: JRST STOP1
3580: PUSHJ P,SETSTP
3581: MOVE TAC,UUOPC(J)
3582: TLNN TAC,USRMOD
3583: TDZA TAC,TAC
3584: HRRI TAC,-1(TAC)
3585: MOVEM TAC,UUOPC(J)
3586: JRST USRX4A
COMCSS page# 0098 next prev
3588:
3589:
3590:
3591:
3592:
3593:
3594:
3595:
3596: ↑STOP1: PUSHJ P,SETSTP
3597: CAME J,JOB(PID)
3598: JRST REQUE
3599: SKIPE INTACT(PID)
3600: SETOM ESTINT
3601: JRST WSCHD2
3602:
3603:
3604: SETSTP: MOVSI TAC,RUN
3605: CONO PI,PIOFF
3606: CAME J,STUSER
3607: TDNN TAC,JBTSTS(J)
3608: JRST STOP1A
3609: ANDCAM TAC,JBTSTS(J)
3610: CONO PI, PION
3611: MOVM TAC,JOBQUE(J)
3612: CAIG TAC,MAXQ
3613: SOSL REQTAB(TAC)
3614: JRST STOP1A
3615: SOSGE AVALTB(TAC)
3616: SETZM AVALTB(TAC)
3617: STOP1A: CONO PI,PION
3618: MOVNI TAC,STOPQ
3619: MOVM TAC1,JOBQUE(J)
3620: CAIE TAC1,NULQ
3621: MOVEM TAC,JOBQUE(J)
3622: CAMN J,LOCKNO
3623: SETZM LOCKNO
3624: POPJ P,
COMCSS page# 0099 next prev
3626:
3627:
3628:
3629:
3630:
3631:
3632:
3633:
3634: ↑DLYCOM:MOVSI TAC,CMWB
3635: IORB TAC,JBTSTS(J)
3636: TLNN TAC,SWP
3637: POPJ P,
3638: MOVSI TAC,COMSNB
3639: JRST SETSIN
COMCSS page# 0100 next prev
3641:
3642:
3643: ↑NOCORQ:PUSHJ P,FLUSIN
3644: MOVEI TAC,NULQ
3645: MOVNM TAC,JOBQUE(J)
3646: JRST REQUE
COMCSS page# 0101 next prev
3648:
3649:
3650:
3651:
3652:
3653:
3654:
3655:
3656:
3657:
3658:
3659: ↑MONJOB:
3660: PUSHJ P,MSTART
3661: JRST SETRUN
3662:
COMCSS page# 0102 next prev
3664:
3665:
3666:
3667:
3668:
3669:
3670:
3671:
3672:
3673: ↑MONSTR:
3674: MOVEI PID,P1PID
3675: CONSO APR,MAOFF
3676: MOVEI PID,P2PID
3677: MOVE J,JOB(PID)
3678: MOVE JDAT,JBTDAT(J)
3679: IFN JDMPRG,<
3680: MOVE PROG,JBTADR(J)
3681: >
3682: EXCH AC1,TAC
3683: JSP TAC,GETPDL
3684: EXCH AC1,TAC
3685: PUSH P,TAC1
3686: JRST (TAC)
COMCSS page# 0103 next prev
3688:
3689:
3690:
3691:
3692:
3693:
3694:
3695:
3696:
3697:
3698:
3699:
3700:
3701: ↑USTART:
3702: MOVE TAC,JOBPC(JDAT)
3703: TLNE TAC,USRMOD
3704: JRST USTRT1
3705: MOVEI TAC,JOBDAC(JDAT)
3706: HRL TAC,JDAT
3707: BLT TAC,JOBD17(JDAT)
3708: MOVE TAC,UUOPC(J)
3709: TLNN TAC,USRMOD
3710: MOVE TAC,UUOOPC(J)
3711: TLNN TAC,USRMOD
3712: TLZ TAC,-1
3713: HRRI TAC,-1(TAC)
3714:
3715:
3716: USTRT1: HLL TAC1,TAC
3717: TLO TAC1,USRMOD
3718: TLZ TAC1,37
3719: JRST MSTAR1
3720:
3721: ↑MSTART:MOVE TAC,JOBPC(JDAT)
3722: TLNE TAC,USRMOD
3723: JRST MSTAR1
3724: MOVE TAC,UUOPC(J)
3725: HRRI TAC,-1(TAC)
3726: MSTAR1: TLNE TAC,USRMOD
3727: MOVEM TAC,JOBOPC(JDAT)
3728: MOVEM TAC1,JOBPC(JDAT)
3729: CAMN J,JOB(PID)
3730: MOVEM TAC1,USRPC(PID)
3731: SKIPE INTACT(PID)
3732: CAME J,SJOB
3733: JRST MSTAR2
3734: MOVE TAC,INTSP
3735: MOVEM TAC1,USRPC-USRJDA-20(TAC)
3736: MSTAR2: PUSHJ P,STXTM2
3737: MOVSI TAC,JERR+WTMASK
3738: ANDCAM TAC,JBTSTS(ITEM)
3739: MOVNI TAC,RUNQ
3740: MOVEM TAC,JOBQUE(J)
3741: IFN FTSWAP,<
3742: SETOM STIME(ITEM)
3743: >
3744: JRST TTYSET
3745:
3746:
3747:
3748:
3749:
COMCSS page# 0104 next prev
3751:
3752:
3753:
3754:
3755:
3756:
3757:
3758:
3759:
3760: ↑SETRUN:
3761: LDB TAC,[POINT JWSIZ,JBTSTS(J),JWPOS]
3762: JUMPE TAC,SETR1
3763: AOSE REQTAB(TAC)
3764: MOVNM TAC,JOBQUE(J)
3765: SETR1: MOVSI TAC,RUN
3766: IORM TAC,JBTSTS(ITEM)
3767:
3768:
3769: ↑REQUE: PUSH P,TAC
3770: MOVEI TAC,QJOB(ITEM)
3771: CONO PI,PIOFF
3772: SKIPE (TAC)
3773: JRST .+3
3774: EXCH TAC,QJOB
3775: HRROM TAC,@QJOB
3776: CONO PI,PION
3777: JRST TPOPJ
COMCSS page# 0105 next prev
3779:
3780:
3781:
3782:
3783:
3784: ↑SETSLP:
3785: MOVSI TAC,CLKR
3786:
3787: IORM TAC,JBTSTS(ITEM)
3788: MOVEI AC1,IOWQ
3789: JRST SETSTT
3790:
3791:
3792:
3793:
3794:
3795: ↑WAKE: MOVNI TAC1,RUNQ
3796: MOVE ITEM,TAC
3797: MOVSI TAC,CLKR
3798: ANDCAM TAC,JBTSTS(ITEM)
3799: MOVM TAC,JOBQUE(J)
3800: CAIE TAC,IOWQ
3801: POPJ P,
3802: MOVEM TAC1,JOBQUE(J)
3803:
3804: JRST REQUE
COMCSS page# 0106 next prev
3806:
3807:
3808:
3809:
3810:
3811:
3812:
3813:
3814: ↑GETDCDT:↑GETDCMT:
3815: XCT @(PDP)
3816: GETWT: PUSHJ PDP,DVWAT1
3817: AOSN DCREQ
3818: JRST CPOPJ1
3819: MOVE AC1,@(PDP)
3820: SUBI AC1,REQTAB
3821: SOSL REQTAB(AC1)
3822:
3823: SETOM AVALTB(AC1)
3824: JFCL DCREQ
3825: PUSHJ PDP,DCWAIT
3826: MOVE AC1,@(PDP)
3827: AOSN @AC1
3828: JRST CPOPJ1
3829: SOSL DCREQ
3830: SETOM DCAVAL
3831: JRST GETWT
COMCSS page# 0107 next prev
3833:
3834:
3835:
3836:
3837:
3838:
3839:
3840:
3841:
3842:
3843:
3844:
3845:
3846:
3847:
3848: ↑MTWAIT:↑DTWAIT:↑DCWAIT:↑STWAIT:
3849: ↑DVWAIT:
3850: MOVE AC1,(PDP)
3851: SKIPA AC1,-2(AC1)
3852: DVWAT1: MOVE AC1,@-1(PDP)
3853: SUBI AC1,REQTAB
3854: SETSTT: MOVE AC3,JOB(PID)
3855: HRRZS AC1
3856: MOVNM AC1,JOBQUE(AC3)
3857: JRST WSCHED
3858:
3859:
3860:
COMCSS page# 0108 next prev
3862:
3863:
3864:
3865:
3866:
3867:
3868:
3869:
3870:
3871:
3872:
3873:
3874:
3875:
3876:
3877:
3878:
3879:
3880: ↑STTIOD:PUSH P,[-TQ]
3881: CAIA
3882: ↑SETIOD:PUSH P,[-RUNQ]
3883: EXCH J,(P)
3884: PUSH P,J
3885: LDB J,PJOBN
3886: SKIPL JBTSTS(J)
3887: JRST [ POP P,J
3888: POP P,J
3889: POPJ P,]
3890: POP P,JOBQUE(J)
3891: PUSHJ PDP,REQUE
3892: POP P,J
3893: NULTST: SKIPE JOB(PID)
3894: POPJ PDP,
3895: CONO PI,PIOFF
3896: JRST STOP2
COMCSS page# 0109 next prev
3898:
3899:
3900:
3901:
3902:
3903:
3904:
3905: ↑WSCHED: JUMPE PID,WSCHD1
3906: PUSHACS
3907: CONSZ APR,MAOFF
3908: JRST WSCHDA
3909: PUSHJ P,DISMES
3910: ASCIZ/ππPDP-6 AT WSCHED
3911: /
3912: POPACS
3913: PUSHJ P,DISFLUSH
3914: JRST AUTOLOAD
3915: WSCHDA: PUSHJ P,DISMES
3916: ASCIZ/ππPID CLOBBERED AT WSCHED
3917: /
3918: POPACS
3919: WSCHD1: SKIPE SPWUUF(PID)
3920: JRST SPWERR
3921: WSCHD2: AOS NWSCHEDS
3922: CONO PI,PIOFF
3923: SETOM SCHEDF(PID)
3924: STOP2: HLLOS CLKFLG(PID)
3925:
3926: CONO PI,PION+1B24!1⊗(7-CLKCHN)
3927:
3928:
3929: POPJ P,
COMCSS page# 0110 next prev
3931:
3932:
3933:
3934:
3935:
3936:
3937:
3938:
3939:
3940:
3941:
3942:
3943:
3944:
3945:
3946:
3947: ↑WAIT1: MOVE IOS,DEVIOS(DEVDAT)
3948: MOVE AC1,DEVMOD(DDB)
3949: TLNE AC1,DVTTY
3950: POPJ P,
3951: TRNN IOS, IOACT
3952: JRST WAIT2
3953: PUSHJ PDP,WSYNC
3954: JRST WAIT1
3955:
3956: WAIT2: MOVSI AC1,DEVIBF
3957: TDNE AC1,DEVCMR(DEVDAT)
3958: TLNN IOS,DEVSBB
3959: POPJ PDP,
3960: PUSHJ PDP,WSYNC
3961: JRST WAIT1
COMCSS page# 0111 next prev
3963:
3964:
3965:
3966:
3967:
3968:
3969:
3970:
3971:
3972:
3973:
3974: ↑WSYNC: MOVSI IOS,IOW
3975: MOVEI AC1,DIOWQ
3976: MOVE AC3,DEVIOS(DEVDAT)
3977: MOVE AC2,DEVMOD(DEVDAT)
3978: TLNN AC2,DVTTY
3979: TRNN AC3,IOACT
3980: MOVEI AC1,IOWQ
3981: MOVE AC3,JOB(PID)
3982: HRRZ AC2,DEVCMR(DEVDAT)
3983: SKIPE P2NUM
3984: JUMPN AC2,WSYNC1
3985: MOVSI AC2,DEVIBF
3986: TDNE AC2,DEVCMR(DEVDAT)
3987: SKIPA AC2,[XWD DEVSBB,0]
3988: MOVEI AC2,IOACT
3989: CONO PI,PIOFF
3990: TDNN AC2,DEVIOS(DEVDAT)
3991: JRST WSYNC3
3992: IORM IOS,DEVIOS(DEVDAT)
3993: MOVNM AC1,JOBQUE(AC3)
3994: CONO PI,PION
3995: PUSHJ PDP,WSCHED
3996: ANDCAB IOS,DEVIOS(DEVDAT)
3997: POPJ PDP,
3998:
3999: WSYNC3: CONO PI,PION
4000: MOVE IOS,DEVIOS(DEVDAT)
4001: POPJ PDP,
COMCSS page# 0112 next prev
4003:
4004:
4005:
4006:
4007: WSYNC1: MOVSI AC2,DEVIBF
4008: TDNE AC2,DEVCMR(DEVDAT)
4009: SKIPA AC2,[XWD DEVSBB,0]
4010: MOVEI AC2,IOACT
4011: PSYNC1 <HRRZ TAC,DEVCMR(DDB)>
4012: TDNN AC2,DEVIOS(DEVDAT)
4013: JRST WSYNC2
4014: CONO PI,PIOFF
4015: IORM IOS,DEVIOS(DEVDAT)
4016: MOVNM AC1,JOBQUE(AC3)
4017: CONO PI,PION
4018: XSYNC1 <HRRZ TAC,DEVCMR(DDB)>
4019: PUSHJ PDP,WSCHED
4020: PSYNC1 <HRRZ TAC,DEVCMR(DDB)>
4021: ANDCAB IOS,DEVIOS(DEVDAT)
4022: WSYNC4: XSYNC1 <HRRZ TAC,DEVCMR(DDB)>
4023: POPJ P,
4024:
4025: WSYNC2: MOVE IOS,DEVIOS(DEVDAT)
4026: JRST WSYNC4
COMCSS page# 0113 next prev
4028: REPEAT 0,<
4029: ; ROUTINE TO SWITCH YOUR JOB TO THE OTHER PROCESSOR TEMPORARILY
4030: ; CALLING . . .
4031: ; PUSHJ P,PSWITCH
4032: ; CLOBBERS ACCUMULATOR AC1
4033:
4034: PSWITCH:
4035: LDB AC1,PRUNB ; PICK UP THIS JOB'S PROCESSOR BITS
4036: PUSH P,AC1 ; SAVE THEM
4037: MOVEI AC1,RUN1
4038: SKIPN PID
4039: MOVEI AC1,RUN2
4040: PSYNC JBTCSC
4041: DPB AC1,PRUNB
4042: XSYNC JBTCSC
4043: PUSHJ P,WSCHED
4044: MOVE PID,OTHERID(PID) ; PICK UP THE PROPER ID
4045: POP P,AC1
4046: PSYNC JBTCSC
4047: DPB AC1,PRUNB
4048: XSYNC JBTCSC ; RESTORE RUN BITS
4049: POPJ P,
4050:
4051: GOTOP1: JUMPE PID,CPOPJ
4052: JRST PSWITCH
4053: >
EOF: COMCSS end-of-file. cnt=112